感谢大家的回复。找到的解决方案:我使用 DIV 而不是 FORM 并序列化其中的每个 INPUT。
当前小提琴代码:http: //jsfiddle.net/MyBZC/
表格:
<form id="sfn" name="sfn">
<input name="datasource" type="hidden" value="TDA">
<input name="staticfields" type="hidden" value="">
<input name="returnfield" type="hidden" value="Complaintinformation_ID">
<input name="returnid" type="hidden" value="Complaintinformation_ID">
eCI ID:<input class="nostyle" type="text" name="id" id="Complaintinformation_ID" style="width:150px;"/>
Complaint number: <input class="nostyle" type="text" name="ecin" id="ecin" style="width:150px;"/>
</form>
jQuery:
var ds= $("#sfn").serializeArray();
alert(ds);
alerting ds 给了我一个空的警告框。可能是因为这个 html 表单实际上在另一个表单标签内,所以 serializeArray() 不起作用?
未经编辑的真实(更长)html输出是这样的:
<form id="searchform_srcSupplier" name="searchform_srcSupplier">
<input name="datasource" type="hidden" value="DEACSQL10_BPCS_DATA">
<input name="from" type="hidden" value="BPCS_AVM">
<input name="where" type="hidden" value="Partner_ID='122'">
<input name="componentname" type="hidden" value="srcSupplier">
<input name="staticstrings" type="hidden" value="Supplier address">
<input name="staticfields" type="hidden" value="LTRIM(RTRIM(VNDAD1))+'<br>'+LTRIM(RTRIM(VNDAD2))+'<br>'+LTRIM(RTRIM(VCITY))+'<br>'+LTRIM(RTRIM(VPOST))+' '+LTRIM(RTRIM(VSTATE))">
<input class="nostyle" name="returnfield" type="hidden" value="VNDNAM">
<input class="nostyle" name="returnid" type="hidden" value="VENDOR_id">
<table ><tr>
<td>
Supplier ID:
</td>
<td>
<input class="nostyle" type="text" name="VENDOR" id="VENDOR" style="width:150px;"/>
</td>
<td>
Supplier name:
</td>
<td>
<input class="nostyle" type="text" name="VNDNAM" id="VNDNAM" style="width:150px;"/>
</td>
</tr><tr>
</tr>
</table>
</form>
(我已经尝试从表格中删除表格)
当前小提琴代码:http: //jsfiddle.net/MyBZC/