jQuery的表单元素数组

我试图让所有表单元素数组,然后使用jquery的$ .each()函数循环遍历它们,并在此函数内获取每个元素的id和title属性。

我试过serializeArray(),但我只能得到'name'和'value'属性。

我需要收集所有表单元素(无论类型如何),select,textarea,并且不管它是否具有值,都被检查或隐藏。

也许像$('#form_id')。find('input select textarea'); ?

任何想法如何实现这一目标?


使用:

$('#form_id')[0].elements

它将返回一个包含所有表单元素的nodeList。

jQuery(
  function($)
  {
    $.each($('#form_id')[0].elements,
           function(i,o)
           {
            var _this=$(o);
            alert('id:'+_this.attr('id')+'ntitle:'+_this.attr('title'));
           })

  }
);

<编辑>
请注意:elements-collecttion可能还包含像fieldset或object这样的元素,请参阅:http://www.w3.org/TR/html5/forms.html#category-listed
</编辑>


您可以使用:input伪类获取所有表单元素:

var elems = $('#form_id').find(':input'); // changed this line

我认为这可以按照你想要的方式工作:

$('#form_id').children('input, select, textarea')
链接地址: http://www.djcxy.com/p/89941.html

上一篇: jquery form elements to array

下一篇: Image upload plugin for WYMeditor