[JQ] serialize方法中文亂碼及解決辦法
在項目中發現用了jquery serialize這個方法後,中文已經轉了編碼格式的了,以為直接將tomcat的設置為utf-8就可以解決,發現並不是這樣的,後來直接上網google一翻,得到以下答案:特記錄如下
- 原因:.serialize()自動調用了encodeURIComponent方法將數據編碼了
- 解決方法:調用decodeURIComponent(XXX, true );將數據解碼
- 例如:
- var params = jQuery( "#formId" ).serialize(); // http request parameters.
- params = decodeURIComponent(params, true );
轉自:http://tcrct.iteye.com/blog/1341368
補充:
在PHP接收時若使用parse_str()會自動套用urlencode(),不需要手動解碼