C# 从c.net向javascript传递字符串值
基本上我有一个字符串变量,我使用下面的代码将这个字符串变量传递给javascript函数C# 从c.net向javascript传递字符串值,c#,javascript,.net,C#,Javascript,.net,基本上我有一个字符串变量,我使用下面的代码将这个字符串变量传递给javascript函数 Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert("+tempString+",event);\""; 我的javascript函数如下所示: function showAlert(stringVal,ex) { //var temp = document.getElem
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);
}
但这并没有给我一个警告框
当我删除参数并运行注释过的代码段时,也会发生同样的情况。任何建议 您需要引用字符串:
"onmouseover=\"showAlert("+tempString+",event);\""
变成:
"onmouseover=\"showAlert('"+tempString+"',event);\""
因此,如果tempString等于foo,那么动态生成的js将是:
onmouseover="showAlert('foo',event);"
您需要引用字符串:
"onmouseover=\"showAlert("+tempString+",event);\""
变成:
"onmouseover=\"showAlert('"+tempString+"',event);\""
因此,如果tempString等于foo,那么动态生成的js将是:
onmouseover="showAlert('foo',event);"
我想你需要在tempString周围加引号。您的C代码现在将导致:
onmouseover="showAlert(testing,event)"
换成
Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert('"+tempString+"',event);\"";
我想你需要在tempString周围加引号。您的C代码现在将导致:
onmouseover="showAlert(testing,event)"
换成
Chart1.Series["Series1"].Points[counter].MapAreaAttributes = "onmouseover=\"showAlert('"+tempString+"',event);\"";
这个函数会被激发吗?如果是,请尝试在函数showAlert中添加return false;您是否使用ASP.Net或MVC作为前端?是否会触发此函数?如果是,请尝试在函数showAlert中添加return false;您是使用ASP.Net还是MVC作为前端?+0。虽然正确,但使用正确编码的字符串会更安全-当前示例可能会导致现在应该使用XSS和方法来构造字符串的内部部分。他只是在对tempString发出愚蠢的警告。我在回答为什么它不工作:+1。也许你是对的,我不应该期望人们关心它:。+0。虽然正确,但使用正确编码的字符串会更安全-当前示例可能会导致现在应该使用XSS和方法来构造字符串的内部部分。他只是在对tempString发出愚蠢的警告。我在回答为什么它不工作:+1。也许你是对的,我不应该期望人们关心它:。