Перадача значэння радкі ў JavaScript з C # .NET

У прынцыпе ў мяне ёсць радковыя пераменны і я перадаць гэтую зменную радок у функцыю JavaScript з дапамогай кода ніжэй.

Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert("+tempString+",event);\"";

мой Javascript функцыя выглядае наступным чынам:

function showAlert(stringVal,ex) {
       //var temp = document.getElementById("HTxtFieldPopIp").value;
     //temp = "testing";
     //alert(temp);
        alert(stringVal);
   }

Але гэта аленевая скура даць мне акно папярэджання.

Калі я выдаліць параметр і запусціць закаментаваўшы кавалкі коду адбываецца тое ж самае. Любыя прапановы.

1
дададзена аўтар Alexei Levenkov, крыніца
дададзена аўтар Alexei Levenkov, крыніца
Вы карыстаецеся ASP.Net MVC ці як пярэдні канец?
дададзена аўтар Sandy, крыніца
Вы карыстаецеся ASP.Net MVC ці як пярэдні канец?
дададзена аўтар Sandy, крыніца
Вы карыстаецеся ASP.Net MVC ці як пярэдні канец?
дададзена аўтар Sandy, крыніца
Ці ёсць звальняюць гэтая функцыя? Калі гэта так, паспрабуйце дадаць зваротную фальшывую ўнутры функцыю showAlert;
дададзена аўтар MahaSwetha, крыніца
Ці ёсць звальняюць гэтая функцыя? Калі гэта так, паспрабуйце дадаць зваротную фальшывую ўнутры функцыю showAlert;
дададзена аўтар MahaSwetha, крыніца
Ці ёсць звальняюць гэтая функцыя? Калі гэта так, паспрабуйце дадаць зваротную фальшывую ўнутры функцыю showAlert;
дададзена аўтар MahaSwetha, крыніца

6 адказы

Вам трэба працытаваць радок:

"onmouseover=\"showAlert("+tempString+",event);\""

будзе выглядаць так:

"onmouseover=\"showAlert('"+tempString+"',event);\""

Такім чынам, калі tempString роўная Foo то JS дынамічна генерыруюцца будзе:

onmouseover="showAlert('foo',event);"
3
дададзена
+1. Магчыма, вы маеце рацыю, я не павінен чакаць, што людзі клапоцяцца пра яго :).
дададзена аўтар Alexei Levenkov, крыніца
+0. Хоць правільна, выкарыстоўваючы належным чынам закадаваную радок будзе значна бяспечней - бягучая выбарка з'яўляецца верагоднай прычынай XSS ( JavaScriptStringEncode .
дададзена аўтар Alexei Levenkov, крыніца
Ён проста робіць дурное папярэджанне на tempString. Я адказваў, чаму ён не працуе :)
дададзена аўтар bryanmac, крыніца

Вам трэба працытаваць радок:

"onmouseover=\"showAlert("+tempString+",event);\""

будзе выглядаць так:

"onmouseover=\"showAlert('"+tempString+"',event);\""

Такім чынам, калі tempString роўная Foo то JS дынамічна генерыруюцца будзе:

onmouseover="showAlert('foo',event);"
3
дададзена
+0. Хоць правільна, выкарыстоўваючы належным чынам закадаваную радок будзе значна бяспечней - бягучая выбарка з'яўляецца верагоднай прычынай XSS ( JavaScriptStringEncode .
дададзена аўтар Alexei Levenkov, крыніца
+1. Магчыма, вы маеце рацыю, я не павінен чакаць, што людзі клапоцяцца пра яго :).
дададзена аўтар Alexei Levenkov, крыніца
Ён проста робіць дурное папярэджанне на tempString. Я адказваў, чаму ён не працуе :)
дададзена аўтар bryanmac, крыніца

Вам трэба працытаваць радок:

"onmouseover=\"showAlert("+tempString+",event);\""

будзе выглядаць так:

"onmouseover=\"showAlert('"+tempString+"',event);\""

Такім чынам, калі tempString роўная Foo то JS дынамічна генерыруюцца будзе:

onmouseover="showAlert('foo',event);"
3
дададзена
+1. Магчыма, вы маеце рацыю, я не павінен чакаць, што людзі клапоцяцца пра яго :).
дададзена аўтар Alexei Levenkov, крыніца
+0. Хоць правільна, выкарыстоўваючы належным чынам закадаваную радок будзе значна бяспечней - бягучая выбарка з'яўляецца верагоднай прычынай XSS ( JavaScriptStringEncode .
дададзена аўтар Alexei Levenkov, крыніца
Ён проста робіць дурное папярэджанне на tempString. Я адказваў, чаму ён не працуе :)
дададзена аўтар bryanmac, крыніца

Я думаю, што вам трэба ў двукоссі tempString. Вашы C# код у цяперашні час прыводзіць да наступнага:

onmouseover="showAlert(testing,event)"

Зменіце яго на

Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert('"+tempString+"',event);\"";
2
дададзена
Daim. Працуе !!! : D Дзякуй вялікае. высока цэніцца.
дададзена аўтар Kasanova, крыніца

Я думаю, што вам трэба ў двукоссі tempString. Вашы C# код у цяперашні час прыводзіць да наступнага:

onmouseover="showAlert(testing,event)"

Зменіце яго на

Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert('"+tempString+"',event);\"";
2
дададзена
Daim. Працуе !!! : D Дзякуй вялікае. высока цэніцца.
дададзена аўтар Kasanova, крыніца

Я думаю, што вам трэба ў двукоссі tempString. Вашы C# код у цяперашні час прыводзіць да наступнага:

onmouseover="showAlert(testing,event)"

Зменіце яго на

Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert('"+tempString+"',event);\"";
2
дададзена
Daim. Працуе !!! : D Дзякуй вялікае. высока цэніцца.
дададзена аўтар Kasanova, крыніца