尝试创建动态 HTML 表单并保存它们,我可以使用 bootstrap 创建动态表单,但在提交时我很难创建此动态表单的 JSON。 我想保存这样的东西
{
"form" :
[
{
"name" : "username",
"id" : "txt-username",
"caption" : "Username",
"type" : "text",
"placeholder" : "E.g. user@example.com"
},
{
"name" : "password",
"caption" : "Password",
"type" : "password"
},
{
"type" : "submit",
"value" : "Login"
}
]
}
我不确定我该如何实现。
最佳答案
应该这样做:
function getAttrs(DOMelement) {
var obj = {};
$.each(DOMelement.attributes, function () {
if (this.specified) {
obj[this.name] = this.value;
}
});
return obj;
}
$("form").each(function () {
var json = {
"form": []
};
$(this).find("input").each(function () {
json.form.push(getAttrs(this));
});
$(this).find("select").each(function () {
var select = getAttrs(this);
select["type"] = "select";
var options = [];
$(this).children().each(function () {
options.push(getAttrs(this));
});
select["options"] = options;
json.form.push(select);
});
console.log(json);
});
关于javascript - 如何创建动态 html 表单的创建 JSON 对象(表单元素)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27563856/