温馨提示×

jQuery serializeArray如何转换格式

小樊
82
2024-10-23 04:48:08
栏目: 编程语言

要将jQuery serializeArray的格式进行转换,您可以编写一个自定义函数来处理结果。以下是一个示例函数,它将serializeArray的输出转换为所需的格式:

function convertSerializeArrayFormat(serializeArray) {
  const result = {};

  $.each(serializeArray, function (index, field) {
    const key = field.name;
    const value = field.value;

    // 如果结果对象中已经存在该键,则将其值设置为数组(如果它还不是一个数组)
    if (result[key]) {
      if (!Array.isArray(result[key])) {
        result[key] = [result[key]];
      }
      result[key].push(value);
    } else {
      result[key] = value;
    }
  });

  return result;
}

// 使用示例
const serialized = $('#your-form').serializeArray();
const converted = convertSerializeArrayFormat(serialized);
console.log(converted);

这个convertSerializeArrayFormat函数接收一个serializeArray对象作为输入,然后遍历它的每个元素。对于每个元素,它将元素的name属性作为新对象的键,将value属性作为值。如果键已经存在于结果对象中,它会将值添加到该键对应的数组中(如果它还不是一个数组)。最后,函数返回转换后的对象。

0