JQuery - Serialize()一个不是表单的对象,但它是一个表单的内部和部分

时间:2010-12-16 19:55:05

标签: javascript jquery

我正在尝试序列化表单中的一些内容:

<form>
  <input ...>
  <input ...>
  <div id=div1>
    <input name=input1 ...>
    <input name=input2 ...>
  </div>
</form>

<script>
  jQuery("#div1").serialize();
</script>

在此代码中,serialize()函数不会序列化input1和input2。甚至我试过

jQuery("<form>" + jQuery("div1").html() + "</form>").serialize()

它确实将输入序列化,但所有值都为空!它就像没有分配用户输入的值:input1=&input2=

那里有解决方案吗? (我需要这样做的原因是这个页面是一个ASP.NET页面,因为ASP.NET标准是基于单个表单的,所以我必须处理这种情况)

2 个答案:

答案 0 :(得分:12)

更好的解决方案是使用:input selector,因为它获取了所有表单元素

jQuery('#div1 :input').serialize();

答案 1 :(得分:6)

我相信这会奏效:

jQuery('#div1 input').serialize()