位址列中文引數在頁面中出現亂碼問題
阿新 • • 發佈:2018-12-06
專案中碰到一個問題:
在搜尋框寫入中文資料在傳送請求時,同時跳轉到另外一個page,把獲取的中文資料寫入input的value中。但是獲取到中文的資料變成亂碼
<input class="input_page" />
解決辦法:
請求時,在獲取到資料加入位址列之前對中文進行倆次轉碼 當前頁面執行轉碼
var url="跳轉的頁面";
var text=$(".input_page").val();
var t=encodeURI(encodeURI(text));
window.location.href=url+"?search="+t;
在跳轉頁面中擷取需要的資料
//獲取位址列引數的方法
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]); return null;
}
var t = getQueryString("search");
var text = decodeURI(t);
然後把獲取的text寫入頁面input的value中就OK了!
已專案實踐!!!