我正在尝试从表单获取信息,并将其传递给mysql。这是我的方法:

var form = [];

$("input").each(function(){
var id = $(this).attr("name");
var value = $(this).val();
alert(id);

var item = {};
item ["name"] = id;
item ["value"] = value;

form.push(item);
});

return JSON.stringify(form);


问题是当我尝试从单选按钮获取选中和未选中的值时。我想传递给mysql的查询字符串如下所示:

insert into contatos (nome, rua, sexo, sexo, ncasa, civil, civil, civil, bairro, aniversario, cidade, rg, cpf, usuario, telefone, senha, email, confirmasenha) values ('', '', 'M', 'F', '', 'S', 'C', 'D', '', '', '', '', '', '', '', '', '', '')

字段“ sexo”和“ civil”正在重复。如何使输入仅读取单选按钮1次?

最佳答案

这是因为您正在遍历每个文本字段,并且如果您有3个单选按钮,则将所有3​​个值都推入数组,因此我将2个单选字段设为sexo和civil外循环,因此将其仅推入1次,并且不会重复。

$("input").each(function(){



if(id!='sexo' || id!='civil'){

     var id = $(this).attr("name");
     var value = $(this).val();

     var item = {};
    item ["name"] = id;
    item ["value"] = value;

    form.push(item);

}


});

 var value1 =$('input:radio[name=sexo]:checked').val();
 var value2 =$('input:radio[name=civil]:checked').val();

    var item = {};
    item ["name"] = "sexo";
    item ["value"] = value1;

    form.push(item);

    var item = {};
    item ["name"] = "civil";
    item ["value"] = value2;

    form.push(item);


return JSON.stringify(form);

关于java - 使用jQuery从表单中检索数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28048276/

10-10 05:08