serializeArray 不适用于选择框
serializeArray not working for selectbox
我正在尝试将表单数据转换为 json 并读取在单击相应复选框时修改的字段值。这适用于文本字段,但不适用于 select 框。任何人都可以看看 fiddle 并帮助我阅读 "Person" 选项卡中的 select 框(爆头)值。
$('#getDataBtn').click (function() {
var data = $('#userForm').serializeArray();
var pfId = 1234;
var person=[];
// $.each(data, function(i, field){
// person[field.name] = field.value;
// });
// personarray['Person']=person;
// console.log(JSON.stringify(personarray));
var personObj = {};
$.each(data, function(i, field){
personObj = {};
console.log(field.name);
personObj['table name']= "Person";
personObj['unique id']= "0";
personObj['profile id']= pfId;
personObj[field.name] = field.value;
person.push(personObj)
});
personarray['Person']=person;
console.log(JSON.stringify(personarray));
});
serializeArray()
将仅采用那些将 name
分配给它们的控件。由于下拉菜单没有指定任何名称,因此未列出。
要更正,请指定一个名称:
<select class="form-control" id="sel1" name="sel1" disabled>
<option>Yes</option>
<option>No</option>
</select>
看到这个working fiddle。
我正在尝试将表单数据转换为 json 并读取在单击相应复选框时修改的字段值。这适用于文本字段,但不适用于 select 框。任何人都可以看看 fiddle 并帮助我阅读 "Person" 选项卡中的 select 框(爆头)值。
$('#getDataBtn').click (function() {
var data = $('#userForm').serializeArray();
var pfId = 1234;
var person=[];
// $.each(data, function(i, field){
// person[field.name] = field.value;
// });
// personarray['Person']=person;
// console.log(JSON.stringify(personarray));
var personObj = {};
$.each(data, function(i, field){
personObj = {};
console.log(field.name);
personObj['table name']= "Person";
personObj['unique id']= "0";
personObj['profile id']= pfId;
personObj[field.name] = field.value;
person.push(personObj)
});
personarray['Person']=person;
console.log(JSON.stringify(personarray));
});
serializeArray()
将仅采用那些将 name
分配给它们的控件。由于下拉菜单没有指定任何名称,因此未列出。
要更正,请指定一个名称:
<select class="form-control" id="sel1" name="sel1" disabled>
<option>Yes</option>
<option>No</option>
</select>
看到这个working fiddle。