我有一个选择列表,其中包含我需要发送到服务器端脚本的ID信息。
我的服务器端脚本正在运行,并且有一个具有属性的对象:GroupId,isManagement和isHourly。
出于某种原因,我的jQuery总是发送一个空对象。 AJAX请求错误,说我的对象是空的。
所以我的问题是,我的jquery代码是否正确地从我的选择列表中检索数据?
谢谢!
以下是HTML示例:
<select id="groupList">
<option id="39238">Group 1</option>
<option id="95833">Group 2</option>
<option id="38911">Group 3</option>
</select>
<input type="button" id="btnSend" value="Send Data" />
这是我的jQuery
$("#btnSend").on("click", function () {
var data = $.map($("#groupList option"), function (e, i) {
return {
GroupId: i.id,
isManagement: True,
isHourly: False
}
});
$.ajax({
type: "POST",
url: url,
data: data,
success: function () {
},
error:function(xhr,err){
alert("readyState: "+xhr.readyState+"\nstatus: "+xhr.status);
alert("responseText: "+xhr.responseText);
}
});
});
答案 0 :(得分:1)
应该是另一种方式,你试图从索引i
获取id。第一个参数是$ .map中的数组元素和第二个参数索引。
var data = $.map($("#groupList option"), function (ob, i) {
return {
GroupId: ob.id,
isManagement: true, // unless True is a variable
isHourly: false //unless False is a variable.
}
});