Posted on 2006-06-20 05:38
Ardor Leo 閱讀(1524)
評(píng)論(2) 編輯 收藏 所屬分類:
有點(diǎn)心得
這是我和朋友在MSN上的對(duì)話,朋友是非常棒的一個(gè)家伙,很厲害。就是他把prototype.js引進(jìn)到項(xiàng)目中的,介紹給我的,現(xiàn)在都離不開(kāi)了。
這段對(duì)話是在朋友的啟發(fā)下總結(jié)的。有所得,有失誤。歡迎不同意見(jiàn)的、高人來(lái)拍幾下,呵呵。
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
是這樣的,解決了ajax的編碼問(wèn)題,可是對(duì)項(xiàng)目的整體編、解碼產(chǎn)生了影響
你還得吧,我們的基礎(chǔ)轉(zhuǎn)碼是在filter中作的
而且就是Tomcat中標(biāo)準(zhǔn)的格式
Evan 說(shuō):
加個(gè)參數(shù)
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
我把AJAX中的參數(shù)檢測(cè)放到了那段代碼最開(kāi)始,想讓它不影響后面的GBK編、解碼
可是還是影響了
Evan 說(shuō):
那要跟一下才知道
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
原因就是我執(zhí)行過(guò)request.getParamter("")。雖然,這里我并沒(méi)有設(shè)置編碼,就是沒(méi)用過(guò)request.setCharsetEncoding()。可是還是讓后面的代碼失效了
這個(gè)試了很多次就是這樣
Evan 說(shuō):
不清楚了
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
把轉(zhuǎn)AJAX參數(shù)的代碼放到系統(tǒng)編、解碼后面,系統(tǒng)就不會(huì)受影響
很奇怪的
Evan 說(shuō):
??
是很奇怪的
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
然后,對(duì)于AJAX的參數(shù)就只能GBK到UTF-8了
可是又有新問(wèn)題了,就是這樣得到的字符集比較小,提交上來(lái)的中文參數(shù)是一個(gè)字的時(shí)候,還會(huì)亂碼
兩個(gè)字就不會(huì),中文空格會(huì)亂碼
Evan 說(shuō):
昏
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
對(duì)于項(xiàng)目中的問(wèn)題,最終的方式就是把算法資源從后臺(tái)全部移至前端用javascript做了
Evan 說(shuō):
昏
不會(huì)這么復(fù)雜把
感覺(jué)不對(duì)
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
剛才說(shuō)到的Tomcat過(guò)濾器的問(wèn)題,我懷疑是第一次用過(guò)request.getParameter()后,它讀東西到緩存中,以后只讀緩存,所以再設(shè)編碼就不起作用了
Evan 說(shuō):
有可能
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
我不想這復(fù)雜,可是沒(méi)找到更好的辦法
而且沒(méi)看到如何可以讓request重新讀一下原始的數(shù)據(jù)流
還有一個(gè)問(wèn)題,你還記得吧。我做彈出框,腳本不能執(zhí)行的問(wèn)題吧?
現(xiàn)在有了答案了
我看到了一篇文章發(fā)給你,不過(guò)我還沒(méi)試過(guò)
http://www.coolcode.cn/?p=117
很強(qiáng)的一個(gè)牛人
Evan 說(shuō):
謝謝
Ardor Leo【對(duì)AJAX的編碼問(wèn)題初戰(zhàn)告捷!二戰(zhàn)失利啊…】 說(shuō):
還有一個(gè)網(wǎng)站,很牛的人,自己把javascript擴(kuò)展成完全面向?qū)ο蟮牧?/p>
http://www.ajaxwing.com/
算是一個(gè)教訓(xùn),以后要全用utf-8做程序的,不然就死翹翹了,呵呵呵
Evan 說(shuō):
好動(dòng)動(dòng)
|