gpt4 book ai didi

Jquery - 通过 ID SerializeArray()

转载 作者:行者123 更新时间:2023-12-01 04:58:50 26 4
gpt4 key购买 nike

我有这个问题,我使用serializearray() jquery将Form的所有字段序列化为Json。如果在输入中输入 name 属性,它可以正常工作,但如果我只想输入 ID 属性,它就不起作用。

名字上的好函数[名称类似:'#myformnameid']:

function formToJson(nameForm)
{
var jsonForm={};
var queryFrom = $(nameForm).serializeArray();

for (i in queryFrom) {
jsonForm[queryFrom[i].name] = queryFrom[i].value;
}
return jsonForm;
}

我尝试使用 attr 来解决 ID 问题。

function formToJson(nameForm)
{
var jsonForm={};
var queryFrom = $(nameForm).serializeArray();

for (i in queryFrom) {
jsonForm[queryFrom[i].attr("id")] = queryFrom[i].value;
}
return jsonForm;
}

有什么想法吗?

最佳答案

serializeArray 的作用是获取表单输入对象并将它们转换为 JavaScript 对象数组。来自 documentation ,形式类似于

[
{
name: "a",
value: "1"
},
{
name: "b",
value: "2"
},
{
name: "c",
value: "3"
}
]

您可以按名称或值迭代此数组,就像您正在做的那样,它将返回正确的数据。

您遇到的问题是您不再迭代实际元素,而只是迭代这些元素中的数据。如果您想迭代元素,则需要执行以下操作:

function formToJson(nameForm)
{
var jsonForm={};
$("input", $(nameForm)).each(function(index){
jsonForm[$(this).attr("id")] = this.value;
})
return jsonForm;
}

关于Jquery - 通过 ID SerializeArray(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12153831/

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