将C#字符串转换为JavaScript字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将C#字符串转换为JavaScript字符串相关的知识,希望对你有一定的参考价值。
有没有人知道在Asp.net中将C#字符串转换为javascript字符串的方法。我的代码看起来像这样:
<script>
@{string thing = "Cats";}
var thing = String(@thing);
</script>
</div>
<body onload="eventAlert(thing)"></body>
答案
您需要JavaScript在编写之前对字符串进行编码,否则您的字符串可能包含导致JavaScript字符串常量过早终止的字符。您可以使用System.Web命名空间中的HttpUtility.JavaScriptStringEncode执行此操作。一旦你完成了这个,你需要从html编码停止剃须刀结果,这可以用HtmlHelper.Raw完成,如下所示:
@{string thing = "Cats Special Chars "!'£$%^&*()@;:";}
var thing = "@Html.Raw(HttpUtility.JavaScriptStringEncode(thing))";
另一答案
请尝试以下方法:
var thing = "@(thing)";
另一答案
有几种很好的方法可以做到这一点。但一个非常干净的方法是使用cookie。这很干净,因为您没有将javascript代码从服务器注入静态客户端代码。编写C#以创建JavaScript然后将其插入变量可能会出现计时问题,具体取决于代码运行的时间和.Net正在执行的操作。出于安全考虑,请仔细阅读字符串。
以上是关于将C#字符串转换为JavaScript字符串的主要内容,如果未能解决你的问题,请参考以下文章
能否像在 Javascript 中将函数转换为字符串一样,将方法转换为 Java 中的字符串?