我使用Razor在
JavaScript中组合了几行.我以为最简单的方法是首先组装整个JavaScript块,然后输出整个事情.问题是,单引号被呈现为& #39 ;.
是否可以更改最后一行以使其正确写入:
var friendArray = new Array(); @{ int i = 0; string jsString=""; foreach(var friend in friends) { jsString = jsString + "friendArray["; jsString = jsString + i.ToString(); jsString = jsString + "]='"; jsString = jsString + friend.displayname; jsString = jsString + "';"; i++; } @jsString; }
以上产生:
friendArray[0]=& #39;Hollister& #39;;friendArray[1]=& #39;Festus& #39;;
解决方法
您可以通过以下方式输出HTML的编码:
@Html.Raw(jsString)