轉帖|其它|編輯:郝浩|2011-01-07 13:55:36.000|閱讀 951 次
概述:在Asp.NET的Json處理中,通常會遇到使用單引號或其他特殊字符,如果直接使用,會截斷Json數據,造成JS錯誤無法正確運行。本文主要介紹.NET種Json時對單引號和特殊字符串的處理,希望對大家有所幫助。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
在Asp.NET的Json處理中,通常會遇到使用單引號或其他特殊字符,如果直接使用,會截斷Json數據,造成JS錯誤無法正確運行。
其實只要使用Javascript的escape方法編碼字符串后就可以解決這個問題。
但是在C#代碼中怎么解決這個問題呢?
我們自然就想到了使用Server.UrlEncode方法來編碼數據,可是實踐后發現編碼后的有些字符在JS中無法被unescape方法還原。
其實解決方法很簡單,引用Microsoft.JScript程序集后,使用GlobalObject類的escape方法就行了。
這個方法作用和Server.UrlEncode類似,但是它相當于是在C#代碼里調用了javascript的escape方法,自然而然可以保證能被unescape方法還原。
.cs中
1 Microsoft.JScript.GlobalObject.escape(strJS);
.js中
var csStr = unescape(json.csStr);
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:網絡轉載