jquery手冊(cè)描述:
data 發(fā)送到服務(wù)器的數(shù)據(jù)。將自動(dòng)轉(zhuǎn)換為請(qǐng)求字符串格式。GET 請(qǐng)求中將附加在 URL 后。查看 processData 選項(xiàng)說(shuō)明以禁止此自動(dòng)轉(zhuǎn)換。必須為 Key/Value 格式。如果為數(shù)組,jQuery 將自動(dòng)為不同值對(duì)應(yīng)同一個(gè)名稱。如 {foo:["bar1", "bar2"]} 轉(zhuǎn)換為 '&foo=bar1&foo=bar2'。
示例:
這里data后面跟的參數(shù)可以用二種表式:一種是普通url傳參的寫法一樣,還有一種就是寫在json數(shù)組里,
上面示例data部分也可以這樣寫:data: {name:"John",location:"Boston"}。這二個(gè)用法有什么區(qū)別?
今天在開(kāi)發(fā)中發(fā)現(xiàn)二者用法的細(xì)微差別。第一種我們用url傳參,參數(shù)里面如果加帶"&"這個(gè)符號(hào)的話,可能參數(shù)接收不到或不完整,如“ data: "name=John&location=Boston",”,
如果name的值是"john&smith"這樣寫可能就會(huì)有問(wèn)題,我們可以用JS里面的encodeURIComponent()方法進(jìn)行轉(zhuǎn)義,
但如果用data: {name:"John",location:"Boston"}這種方式寫的話就不需要進(jìn)行轉(zhuǎn)義,如果轉(zhuǎn)義的話,接收的將是轉(zhuǎn)義后的字符串
新聞熱點(diǎn)
疑難解答
圖片精選