gpt4 book ai didi

javascript - ajax 发布多个输入组

转载 作者:行者123 更新时间:2023-11-30 13:23:07 25 4
gpt4 key购买 nike

我有一个包含 4 组复选框的表单,用于优化搜索结果。我希望能够为每个复选框组发布一个数组,其中包含当前勾选的复选框的 ID。

 $.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 列表。我确信这是可能的,但我只是想念它。

谢谢。

最佳答案

jQuery.serialize()函数可用于对整个表单的内容进行编码以供提交。您可以像这样在 AJAX 请求中使用编码字符串:

$.ajax({
url: "/some-url",
type: "POST",
data: $("#some-form").serialize() // returns name-value pairs, encoded as form data
});

关于javascript - ajax 发布多个输入组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9518200/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com