Jquery亂碼的一次解決過程 圖解教程
簡(jiǎn)單的請(qǐng)求,簡(jiǎn)單的響應(yīng),但是亂碼產(chǎn)生了
Why?
亂碼之所以產(chǎn)生,原因很簡(jiǎn)單,無非就是編碼表用錯(cuò)了,如傳的是big5字符,接收卻使用utf-8,或utf-8編碼,卻用GB2312解碼。
好吧,先確認(rèn)一下是否請(qǐng)求過程中產(chǎn)生的亂碼
那我發(fā)過去的是亂碼嗎?
打開C:/tmp/下的test.txt
這是什么編碼,猜一猜?
看來客戶端沒錯(cuò),且正確地到了服務(wù)器端了,那應(yīng)該是asp.net搞錯(cuò)了編碼了,HttpRequest類里找下有沒有相關(guān)的Encoding相關(guān)的屬性
看看web.config吧
測(cè)試一下修改成utf-8看看
原因成功找到,看來就是客戶端傳utf-8,然后服務(wù)器端big5接收產(chǎn)生問題
不過這個(gè)專案不能這樣解決,因?yàn)檫@個(gè)舊專案跑了很久了,改這里可能影響以前的其它程式,那就改客戶端吧,設(shè)置請(qǐng)求屬性為utf-8,讓asp.net不迷茫
修改ajax請(qǐng)求代碼,設(shè)定charset屬性
問題得以解決,不過最近也有在vs2005中使用jquery,沒有發(fā)生亂碼,可能是vs2005已經(jīng)默認(rèn)為utf-8了(有空再去找下是在哪里默認(rèn)的,或那位TX告知一下)
vs.net2003默認(rèn)是本機(jī)操作系統(tǒng)的編碼,如big5,gb2312,因此常常發(fā)生亂碼問題.
另,分享一個(gè)簡(jiǎn)單的文本文件的亂碼查看方法.
對(duì)于一些不是以txt結(jié)尾的文本檔(如aspx,cs),可以先將后綴改為txt,然后再打開IE看,否則IE會(huì)不認(rèn)得,直接下載
圖片太多,請(qǐng)網(wǎng)速慢的TX原諒~~
相關(guān)文章
jQuery移動(dòng)web開發(fā)之頁面跳轉(zhuǎn)和加載外部頁面的實(shí)現(xiàn)
這篇文章主要介紹了jQuery移動(dòng)web開發(fā)之頁面跳轉(zhuǎn)和加載外部頁面的實(shí)現(xiàn),以changePage()和loadPage()方法的使用為主,需要的朋友可以參考下2015-12-12
Jquery 跨域訪問 Lightswitch OData Service的方法
修改lightswitch .server project web.config。添加如下內(nèi)容就可以實(shí)現(xiàn)對(duì)ApplicationData.svc/跨域訪問2013-09-09
jQuery Easyui datagrid連續(xù)發(fā)送兩次請(qǐng)求問題
用上述方式動(dòng)態(tài)加載datagrid的數(shù)據(jù)時(shí),通過net監(jiān)聽,發(fā)現(xiàn)調(diào)用了兩遍XX方法,目前的解決方案是,將url放到datagrid初始化的時(shí)候執(zhí)行2016-12-12
Jquery倒數(shù)計(jì)時(shí)按鈕setTimeout的實(shí)例代碼
這篇文章介紹了Jquery倒數(shù)計(jì)時(shí)按鈕setTimeout的實(shí)例,有需要的朋友可以參考一下2013-07-07














