要將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
屬性作為值。如果鍵已經存在于結果對象中,它會將值添加到該鍵對應的數組中(如果它還不是一個數組)。最后,函數返回轉換后的對象。