3

我有以下表格:

<form id="searchform_txtRepeatComplaint" name="searchform_txtRepeatComplaint">
   <input name="datasource" type="hidden" value="TDA">
   <input name="from" type="hidden" value="eci_data">
   <input name="where" type="hidden" value="">
   <input name="componentname" type="hidden" value="txtRepeatComplaint">
   <input name="staticstrings" type="hidden" value="">
   <input name="staticfields" type="hidden" value="">
   <input class="nostyle" name="returnfield" type="hidden" value="Complaintinformation_ID">
   <input class="nostyle" name="returnid" type="hidden" value="Complaintinformation_ID">
eCI ID:<input  class="nostyle" type="text" name="Complaintinformation_ID" id="Complaintinformation_ID" style="width:150px;"/> 
Complaint number: <input  class="nostyle" type="text" name="eci_number" id="eci_number" style="width:150px;"/>
</form>

这是一个更大的表单标签中的表单。我也有以下JS代码:

var data_save = $("#searchform_txtRepeatComplaint").serializeArray();
alert(data_save);

警报显示为空。(甚至没有显示 [Object],它只是一个空的警报框)。我究竟做错了什么?

未来读者的解决方案: 我找到了解决此错误的方法。我将 FORM 更改为 DIV 并添加了输入选择器,如下所示:

var data_save = $("#searchform_txtRepeatComplaint input").serializeArray();

另外:文档状态 serializeArray() 不适用于表单中的表单(无论如何这都是非法的 HTML)

4

1 回答 1

2

您错过了选择器中的 #

var data_save = $("#searchform_txtRepeatComplaint").serializeArray();

代替

var data_save = $("searchform_txtRepeatComplaint").serializeArray();

此外,要调试代码,您应该使用 console.log() 而不是 alert()。检查对象/数组更有用。

于 2012-10-14T19:47:12.040 回答