那么如何在Razor的Html.Raw助手中引用java脚本函数参数呢? 为了能够调用定义的js函数,我看起来需要单引号参数..
输出NON转义参数时输出:
@Html.Raw("<a onClick='copyRowValues(" + name + ", " + localTable + ", " + sqlName + ");' > " + name + " </a>");
翻译如下:
<a onclick="copyRowValues(ASN, ASN, ASN_RECORD_ID);">
看起来不错,但是当copyRowValues(...)js函数的那些参数不是单引号时,函数不会被调用。 所以当我添加这样的单引号时:
@Html.Raw("<a onClick='copyRowValues('" + name + "', '" + localTable + "', '" + sqlName + "');' > " + name + " </a>");
产生:
<a 'asn_record_id');'="" 'asn',="" asn',="" onclick="copyRowValues(">
用@或\逃避只是不适合我。 谢谢您的直接解决方案!
答案 0 :(得分:0)
使用双引号是否有效? e.g。
@Html.Raw("<a onClick=""copyRowValues('" + name + "', '" + localTable + "', '" + sqlName + "');"" > " + name + " </a>");
答案 1 :(得分:0)
为什么不用没有Html.Raw()的解决方案?以某种方式使用它生成输出html的方法有点过时了。
尝试这样的事情:
<a onclick="copyRowValues(@name, @localTable, @sqlName)">@name</a>
希望它有所帮助。