JQuery - 如何遍历所有表单输入?

时间:2017-04-18 12:06:02

标签: javascript jquery

我想从表单中通过JQuery获取所有输入的值到一个数组,该数组将通过GAX通过AJAX发送。

我尝试了以下但是没有用:

function gatherFormData(){
    $('#formId input, #formId select').each(
    function(index){
        var result = [];
        for(var i =0; i < $(this).length; i++){
        document.write(input.attr('name') + "-" + input.attr('name') + "<br />");
        result.push(input.attr('name'));
        result.push(input.val());
        }
    return result;
    }
    );
}

我如何获得所有这些值?

1 个答案:

答案 0 :(得分:2)

尝试以下方式:

&#13;
&#13;
var jsonObj = [];
$(":input").each(function(){
 var key = $(this).attr('name');
 var val = $(this).val();
 item = {}
 item [key] = val;

 jsonObj.push(item);
});

console.log(jsonObj);
// Now pass it like jsonObj[0], jsonObj[1]......
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form>
  <input type="text" name="name" id="txtName" value="John" />
  <input type="text" name="email" id="txtEmail" value="john@gmail.com" />
  <div>
    <input type="checkbox" name="active" id="chkIsActive" checked />
  </div>
  <input type="submit" value="qweqsac" />
</form>
&#13;
&#13;
&#13;