今天我在調程序時,遇到了見郁悶的事,我用ajax從前臺顯示頁面傳字符串變量給處理頁面,出現了件怪事,我想傳的內容是abc+,但接收以后用System.out.println()輸出是abc空格。反復測試好幾遍,都是這個結果,真是令人郁悶。在網上搜了搜,找到了原因。
原因:?? url中有些字符被轉義,比如空格被編碼成加號,于是傳的參數明明是加號,獲取的值卻成了空格。如何解決呢?如果是通過url傳遞參數,應該對其進行必要的編碼。
解決辦法:
???????? 在javascript中加入?? function URLencode(sStr)
{
??? return escape(sStr).replace(/\+/g, '%2B').replace(/\"/g,'%22').replace(/\'/g, '%27').replace(/\//g,'%2F');
}
對字符串進行處理.如:var str=URLencode("abc+")