ReferenceError: wrong left side assignment in console

Js code

if ($language == 'english') {
  var displayvalue = "";
  if (data[i].report_name.length >= 20) {
    displayvalue = data[i].report_name.substr(0, 20) + "...";
  } else {
    displayvalue = data[i].report_name
  }
  subMDesign += '<a  href=""  ng-click="getIndividualGraph(' + data[i].report_id + ',' + data[i].report_type + ')" ondragstart="event.dataTransfer.setData(text, drag.action?reportId=' + data[i].report_id + '&reportType=' + data[i].report_type + '_' + data[i].report_id + '_' + data[i].report_type + '_22)"><span class="iconsweet">r</span><span class="tooltips" title="' + data[i].report_description + '" unselectable="on">' + displayvalue + '</span></a>';

} else {
  var displayvalue = "";
  if (data[i].report_name.length >= 20) {
    displayvalue = data[i].report_name_ar.substr(0, 20) + "...";
  } else {
    displayvalue = data[i].report_name_ar;
  }
  subMDesign += '<a  href=""  ng-click="getIndividualGraph(' + data[i].report_id + ',' + data[i].report_type + ')" ondragstart="event.dataTransfer.setData(text, drag.action?reportId=' + data[i].report_id + '&reportType=' + data[i].report_type + '_' + data[i].report_id + '_' + data[i].report_type + '_22)"><span class="iconsweet">r</span><span class="tooltips" title="' + data[i].report_description + '" unselectable="on">' + displayvalue + '</span></a>';
}
}
var temp = $compile(subMDesign)($scope);
$("#reportUl" + $catid).html(temp);

I am dynamically adding subMDesignto divin the last line. The console subMDesigndisplays as follows:

enter image description here

When you start dragging and dropping, the console displays an error message:

ReferenceError: wrong assignment of the left side event.dataTransfer.setData (text, drag.action? ReportId = 93 & reportType = 6_93_6_22)

and the arrow points to reportId = 93. Please help me solve this problem.

+4
source share
1 answer

This is a violation because you assign a string without specifying it as such; for example, you want to display this on the page:

// Note the quotes, to escape the string:
event.dataTransfer.setData(text, 'drag.action?reportId=93&reportType=6_93_6_22')

, , . , , /-, - :

var displayvalue = "";
var field = ($language == 'english') ? 'report_name' : 'report_name_ar';

if (data[i].report_name.length >= 20) {
  displayvalue = data[i][field].substr(0, 20) + "...";
} else {
  displayvalue = data[i][field];
}

subMDesign += '<a  href=""  ng-click="getIndividualGraph(' + data[i].report_id + ',' + data[i].report_type + ')" ondragstart="event.dataTransfer.setData(text, \'drag.action?reportId=' + data[i].report_id + '&reportType=' + data[i].report_type + '_' + data[i].report_id + '_' + data[i].report_type + '_22\')"><span class="iconsweet">r</span><span class="tooltips" title="' + data[i].report_description + '" unselectable="on">' + displayvalue + '</span></a>';

var temp = $compile(subMDesign)($scope);
$("#reportUl" + $catid).html(temp);

, (: \'), , .

:

var foo = "foo"; 
console.log(foo); // prints: foo
var bar = "\"bar\""; // we have to escape double quotes inside double quotes
console.log(bar); // prints: "bar"
var blee = "'blee'"; // no need to escape single quotes inside double quotes
console.log(blee); // prints: 'blee'
var blar = '\'blar\''; // but we have to escape single quotes inside single quotes
console.log(blee); // prints: 'blar'
0

Source: https://habr.com/ru/post/1653269/


All Articles