我在 asp.net mvc 视图中使用了一些 javascript/jquery,并且正在使用 html 帮助程序附加一些 html 代码。
$("#update").append('@Html.CustomHelper(m => m.Values)');
自定义 html 帮助器生成几行长的 html 块。问题是第一行以 a 开头,'
然后最后一行以 a 结尾'
,但其余行不是字符串。
JavaScript 或 jQuery中有没有办法处理HTMLstringify
块?
我在 asp.net mvc 视图中使用了一些 javascript/jquery,并且正在使用 html 帮助程序附加一些 html 代码。
$("#update").append('@Html.CustomHelper(m => m.Values)');
自定义 html 帮助器生成几行长的 html 块。问题是第一行以 a 开头,'
然后最后一行以 a 结尾'
,但其余行不是字符串。
JavaScript 或 jQuery中有没有办法处理HTMLstringify
块?
更好的方法是在 ASP.NET 端为 Javascript 编码字符串。使用可能:
HttpUtility.JavaScriptStringEncode(string)
这样,您就可以保证具有一致且有效的编码,而不必担心引号等。只需在方法中替换您的字符串。
你可以让你的CustomHelper
方法返回一个正确的 JS 编码的编码字符串。在您从方法调用返回之前,您可以使用HttpUtility.JavaScriptStringEncode(yourStringHere)
.
你可以使用Html.Raw
$("#update").append("@Html.Raw(Html.CustomHelper(m => m.Values))");
为什么不使用双引号?
$("#update").append("@Html.CustomHelper(m => m.Values)");