1. 描述
雖然我們建議範本名稱、參數變數名稱都用英文,但是對於複雜報表,參數肯定有中文情況。
使用 IE 瀏覽器透過 URL 給參數指派為中文時,會發現中文值會出現亂碼,如下圖所示
2. 問題原因
因為瀏覽器程式碼與伺服器程式碼不一致,導致中文 URL 輸入會產生亂碼,無法被正常識別。
3. 解決方案
透過 URL 給參數指派一般應用在報表已經整合到項目中,希望點選某個連結將某個值傳遞給報表;而在瀏覽器中直接給參數指派呢,一般是做測試使用的,此時可以將瀏覽器換成火狐或者谷歌。
整合到項目中,可以使用 encodeURIComponent 方法,如點選某個連結給 col 指派為地區,此時可以使用如下方法:
window.location="http://localhost:8075/webroot/decision/view/report?viewlet=doc/Parameter/DynamicCol/DynamicCol.cpt&col="+encodeURIComponent("中文名稱")
詳細的內容可參考 程式碼轉換 章節。