日期:2014-05-16  浏览次数:20392 次

asp.net后台用Server.UrlEncode编码后,前台用js如何解码?
asp.net后台用Server.UrlEncode编码后,前台用js如何解码?


如题


若能变相解决我的问题也可以,我的想法:
1。后台查询到数据
2。将办法将这些数据加载到html控件

我目前是用的Page.RegisterClientScriptBlock()方法将这些数据写到客户端
string js = string.Format("<script>var content='{0}';</script>",content);
Page.RegisterClientScriptBlock("id",js);
再由客户端来加载到html控件

一般情况是没有问题的,可一旦内容中存在特殊字符,如单引号,那么写入到客户端的js代码就会有问题了
如:var content='你好啊 '在干嘛啊' <<content本来是你好啊 '在干嘛啊,结果由于单引号提前结束

于是我在后台用Server.UrlEncode对其进行编码,但是前台又无法解码
我试过:unescape(),没用!!


------解决方案--------------------
decodeURIComponent
------解决方案--------------------
试试
后台,项目添加引用 Microsoft.Jscript
Microsoft.JScript.GlobalObject.escape();
使用这个来编码,然后再使用unescape解码

如果不行,再提出来