首先,確定geoserver發佈的shp數據中文值是否顯示正常,如果現實不正常,即使查詢到,查詢結果也會是一堆亂碼。
解決shp數據中文值亂碼的方法:選擇數據存儲,點擊相應的圖層,修改其編碼爲GBK2312。
則是查看其編碼已經爲正常中文。
接下來,在屬性查詢name字段的value值爲小型水解酸化池的時候,要對cql_filter參數進行轉碼操作,將其轉爲Unicode編碼,完美解決。
轉碼函數:
var str2Unicode = function(str) {
var es=[];
for(var i=0;i < str.length;i++)
es[i]=("00"+str.charCodeAt(i).toString(16)).slice(-4);
return "\\u"+es.join("\\u");
}