将数组添加到序列化表单数据

时间:2020-05-23 11:14:51

标签: javascript php jquery serialization

我想更新表中的选定行。每行都有一个ID(ID来自数据库中的表)。因此,我尝试将这些ID添加到序列化数据中。数组如下所示:

["1", "3"]

formData:

{"f_name":["tom","peter"],"l_name":["fel", "dan"]}

,我想收到这个消息:

{"id":["1","3"],"f_name":["tom","peter"],"l_name":["fel", "dan"]}

我该如何实现?

演示:https://jsfiddle.net/t6xkbdo0/

1 个答案:

答案 0 :(得分:1)

您可以减少元素以构建所需的输出,最后必须在请求中将js对象作为正文发送。

let formData = Array.from(document.querySelectorAll('input')).reduce((a, i) => {
  if (!i.disabled) {
    (a[i.name] || (a[i.name] = [])).push(i.value);
  }
  return a;
}, {id: ['2', '3']});

console.log(formData);
相关问题