0

我正在尝试将表单序列化为 div,但它不起作用,我不知道为什么。

我有这个:

<div id="dialog-form">
   <form>

<LABEL for="firstname">First name: </LABEL>
          <INPUT type="text" id="firstname"><BR>
<LABEL for="lastname">Last name: </LABEL>
          <INPUT type="text" id="lastname"><BR>
<LABEL for="email">email: </LABEL>
          <INPUT type="text" id="email"><BR>
<INPUT type="radio" name="sex" value="Male"> Male<BR>
<INPUT type="radio" name="sex" value="Female"> Female<BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">

    </form>
</div>

我试试这个:

jQuery("#dialog-form").find("form").serialize()

但它返回一个空字符串,即使文本字段包含数据。谁能告诉我为什么?

4

1 回答 1

3

您的元素没有name属性。<input>序列化(实际上是常规的 HTTP 表单提交)需要命名您的输入元素,因为它的全部目的serialize是将您的元素name=value成对。

为您的标签添加name="..."属性:<input>

<input type="text" name="firstname" id="firstname"><br>

如果未选中,您的单选按钮也将从序列化字符串中省略。

于 2012-10-25T21:40:21.493 回答