Javascript ajax发布多个输入组
我有一个带有4组复选框的表单,用于优化搜索结果。我希望能够为每个复选框组发布一个数组,其中包含当前选中复选框的idJavascript ajax发布多个输入组,javascript,jquery,ajax,forms,post,Javascript,Jquery,Ajax,Forms,Post,我有一个带有4组复选框的表单,用于优化搜索结果。我希望能够为每个复选框组发布一个数组,其中包含当前选中复选框的id $.ajax({ url: "/stay_in_belfast/accommodation", type: "POST", data: { subcategory_ids:$(":checkbox[name^='subcategory_ids[']").serialize(),
$.ajax({
url: "/stay_in_belfast/accommodation",
type: "POST",
data: {
subcategory_ids:$(":checkbox[name^='subcategory_ids[']").serialize(),
rating_ids:$(":checkbox[name^='rating_ids[']").serialize(),
location_ids:$(":checkbox[name^='location_ids[']").serialize(),
facility_ids:$(":checkbox[name^='facility_ids[']").serialize()
},
success: function( data ) {
}
});
当我发布此消息时,虽然我的数组按预期包含四个变量,但数据如下所示:
subcategory_ids%5B%5D=22&subcategory_ids%5B%5D=23&subcategory_ids%5B%5D=24&subcategory_ids%5B%5D=26&subcategory_ids%5B%5D=27&subcategory_ids%5B%5D=28
如果使用serializeArray,则四个post变量中的每一个都包含一个名称与输入名称和值成对的数组。但是,输入名称始终是该组输入的组名称,因此对我来说没有实际用途。如果我尝试这样做,只需发送一个组,例如
$.ajax({
url: "/stay_in_belfast/accommodation",
type: "POST",
data: $(":checkbox[name^='subcategory_ids[']").serialize(),
success: function( data ) {
}
});
它将帖子显示为id的数组。我不明白为什么这会有所不同,这取决于我是通过一个分组发帖还是通过四个分组发帖
基本上,我想在我的帖子中看到的是由输入组标识的4个数组,每个数组包含一个id列表。我相信这是可能的,但我只是错过了它
谢谢。函数可用于对整个表单的内容进行编码以供提交。您可以在AJAX请求中使用编码字符串,如下所示:
$.ajax({
url: "/some-url",
type: "POST",
data: $("#some-form").serialize() // returns name-value pairs, encoded as form data
});
函数可用于对整个表单的内容进行编码以供提交。您可以在AJAX请求中使用编码字符串,如下所示:
$.ajax({
url: "/some-url",
type: "POST",
data: $("#some-form").serialize() // returns name-value pairs, encoded as form data
});
不知何故,他们在使用时遇到了问题:
url: "/foldername/file.php",
我必须始终使用:
url: "foldername/file.php",,
不知何故,他们在使用时遇到了问题:
url: "/foldername/file.php",
我必须始终使用:
url: "foldername/file.php",,
我不知道是什么导致了你的问题,但我可以想出一些办法来尝试:1。在调用外部单独创建数据对象,并将其传入。2.序列化整个结构,而不是单个属性。您是否尝试过
$(“form#some _form _id”)。Serialize()
?Cheers@SalmanA。对整个表单进行序列化非常有效。谢谢。您现在展示的是标准的urlencoded表单数组格式,您需要json数组还是???需要更多的细节我不知道是什么导致了你的问题,但我可以想出一些办法来尝试:1。在调用外部单独创建数据对象,并将其传入。2.序列化整个结构,而不是单个属性。您是否尝试过$(“form#some _form _id”)。Serialize()
?Cheers@SalmanA。对整个表单进行序列化非常有效。谢谢。您现在展示的是标准的urlencoded表单数组格式,您需要json数组还是???需要更多的细节