使用此回答How to get all child inputs of a div element (jQuery)我获取特定<div>
内的所有输入。
我还想通过ajax发送输入,输入的数量不是固定的,所以不是手动将每个输入放入要发送的json数据中,我想使用each()
- 这里有点我不知道 - 将每个 name
和value
附加到json。
$('#mydiv :input').each(function(k, v) {
postData += [{ $(v).attr("name"): $(v).val() }];
}
$.post("url.htm", postData, function( data ) { /***/ });
这里面必定有一个小错误,但我无法弄明白。
答案 0 :(得分:1)
看起来serializeArray
功能就是您所需要的:
$.post("url.htm", $('#mydiv :input').serializeArray(), function( data ) { /***/ });
答案 1 :(得分:0)
既然你想发送postdata,请先尝试制作一个数组,然后你需要这样做
var postData=[];
('#mydiv :input').each(function(k, v) {
postData.push({ $(v).attr("name"): $(v).val() });
}
$.post("url.htm", postData, function( data ) { /***/ });
请注意,在进行POST调用时,如果预期响应为JSON,请将第4个参数指定为“json”。