
本文介绍在 jquery ajax 中处理多个同名复选框(如 `name="product-category"`)时,如何将选中的多个值合并为单个逗号分隔字符串(如 `product-category=29,27`),而非默认的重复键格式(`product-category=29&product-category=27`)。
在表单提交场景中,尤其是与 WooCommerce 或自定义 AJAX 搜索联动时,复选框常用于多条件筛选(如商品分类)。但 jQuery 的 .serialize() 方法对同名复选框仅做“键值对平铺”,生成形如 product-category=29&product-category=27 的查询字符串——这在 PHP 后端接收时会被覆盖(仅保留最后一个值),无法直接解析为数组。
正确做法是:先用 .serializeArray() 获取结构化数据数组,再按需聚合特定字段,最后通过 $.param() 重新序列化。以下是完整、健壮的实现方案:









