問題引入
當(dāng)您看到我文章的時候飒炎,后來查到我的前端頁面和后端頁面的編碼都是GBK,而jQuery ajax提交時默認(rèn)進(jìn)行了utf-8編碼笆豁,郎汪。
在網(wǎng)上找了很多解決方案都覺得太復(fù)雜,比如以下這篇中的辦法是出現(xiàn)得比較多的:
上文中提到了兩種方法:
1:發(fā)送頁面怒竿、接收頁面均采用UTF-8編碼。
2:發(fā)送頁面在調(diào)用ajax post方法之前扩氢,將含有中文內(nèi)容的input用encodeURIComponent編碼一次耕驰,而接收頁面則調(diào)用解碼方法( 如:java.net.urldecoder.decode("接收到內(nèi)容","utf-8") )
評價(jià)第一種方法:不現(xiàn)實(shí)录豺,我全站都是用的asp編碼
評價(jià)第二種方法:要修改一個jQuery函數(shù)進(jìn)行前端編碼朦肘,后端又解碼回來,嫌麻煩双饥。。棚菊。
解決思路
前端和服務(wù)端編碼都是GBK是统求,jQuery默認(rèn)進(jìn)行了utf-8編碼的提交怕犁,那我們就讓它按照默認(rèn)方式提交篇恒,在服務(wù)端端把收到的uft-8再數(shù)據(jù)轉(zhuǎn)回GBK不就行了嗎?
操作指南
前端html
我特么也是服了簡書了,粘貼代碼竟然不行。悍汛。。只能上圖了
前端ajax
后端asp
總結(jié),這種解決辦法的好處就在于兆解,前端一定都不用動,后端用個函數(shù)轉(zhuǎn)換一下就可以了跑揉,而且所有的頁面都可以是GBK編碼的