我正在尝试在 MVC2 View 页面中单击时调用 JavaScript 函数。
<a onclick=" SelectBenefit(<%=o.ba_Object_id %>,<%=o.ba_Object_Code %>)" href="#">Select</a>
JavaScript 函数
function SelectBenefit(id,code) {
alert(id);
alert(code);
}
这里 ba_Object_Id 和 Code 是来自 ViewModel 的值。如果我以这种方式使用
SelectBenefit(<%=o.ba_Object_id %>)
,它工作正常。但是当我有两个参数时它不是。我收到这个错误:conditional compilation is turned off.
最佳答案
我认为你需要在第二个参数周围加上引号,如果它是一个字符串:
<a onclick=" SelectBenefit(<%=o.ba_Object_id %>, '<%=o.ba_Object_Code %>')" href="#">Select</a>
这就是说您的参数需要正确编码,我不会像这样传递它们。我会将它们序列化为 JSON 对象以确保一切正常。像这样:
<a onclick="SelectBenefit(<%= new JavaScriptSerializer().Serialize(new { id = o.ba_Object_id, code = o.ba_Object_Code }) %>)" href="#">Select</a>
然后 SelectBenefit 函数可能如下所示:
function SelectBenefit(benefit) {
alert(benefit.id);
alert(benefit.code);
}