@ Html.Raw to general javascript function call error if if variable with white space

时间:2016-08-17 09:38:52

标签: asp.net-mvc razor

我是MVC和Razor引擎的新手。尝试使用@ Html.Raw输出以下字符串,但预期结果不同。

@Html.Raw("&nbsp;<span class='label label-warning' style='cursor: pointer' onclick=ChangeRPLocStatus(2,1,'1160001','1160001','X','Test 1')>AABBCC</span>")

Html输出:

<span class="label label-warning" style="cursor: pointer;" onclick="ChangeRPLocStatus(2,1,'1160001','1160001','X','Test" 1')="">AABBCC</span>

“测试1”的输出不同。

我期待得到:

ChangeRPLocStatus(2,1,'1160001','1160001','X',Test 1')

但它变成了:

ChangeRPLocStatus(2,1,'1160001','1160001','X','Test" 1')=""

1 个答案:

答案 0 :(得分:2)

我猜这是因为onclick=ChangeRPLocStatus(2,1,'1160001','1160001','X','Test 1')在js方法调用周围没有引号。试试这个?

onclick=\"ChangeRPLocStatus(2,1,'1160001','1160001','X','Test 1')\"

另外,有一点提示,你是从实际来源(Chrome中的Ctrl + U)还是通过Dev Tools或Firebug获得输出,它们可能会有所不同,引起混淆。