[英]passing data in javascript array to server with jQuery.ajax post function?
我想知道是否可以使用jQuery的ajax函數將存儲在javascript數組中的數據傳遞給服務器。
在jQuery文檔中,它指定:
$.ajax({
type: 'POST',
url: url,
data: data,
success: success,
dataType: dataType
});
可以將“數據”設置為數組嗎? 鑒於數據似乎期待關鍵價值對,它將如何運作? 我目前只是硬編碼值,但我希望它是一個更動態的方法..我目前的代碼是:
jQuery.ajax({
url: "/createtrips/updateitin",
type: 'POST',
data: {place1: 'Sydney', place2: 'London'},
dataType: 'json',
});
我創建了一個這樣的數組:
var placesfortrip = {};
然后像這樣添加到它:
placesfortrip["item"+counter] = inputVal;
(其中counter
是遞增的計數器變量)然后將其分配給ajax調用的data
屬性
jQuery.ajax({
url: "/createtrips/updateitin",
type: 'POST',
data: placesfortrip,
dataType: 'json',
});
如果我查看firebug中的XHR選項卡,那么這些值就會被發布!
是的, jQuery.ajax()
支持傳遞數組。 它只是將數組序列化為名稱 - 值字符串。
如果value是一個數組,jQuery會根據
traditional
設置的值使用相同的鍵序列化多個值(如下所述)。
我相信您希望使用JSON來傳遞這些值。
查看jQuery序列化: http : //api.jquery.com/serialize/
$('form').submit(function() {
alert($(this).serialize());
return false;
});
This produces a standard-looking query string:
a=1&b=2&c=3&d=4&e=5
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.