查詢條件使用js跳轉url,在傳遞中文參數的使用到了encodeURI,搜索後發現後臺數據查不出來
debug後發現SQL查詢在where條件中有個參數值是undefined
回到js去排查錯誤,發現alert(XXX)出現undefined
剛開始在js加了個簡單的判斷
var XXX = $("#XXX").val()=="undefined"?"":encodeURI($("XXX").val());
結果還是傳遞undefined,最後發現
alert($("#XXX"));//對象存在 輸出obj
alert($("#XXX").val());//爲null
alert(encodeURI("#XXX").val()));//輸出undefined
undefined字符串值是出現在encodeURI轉換null之後的,因此判斷因改爲:var XXX = $("#XXX").val()==null?"":encodeURI($("XXX").val());