尝试将HTML表单转换为JSON但返回空

时间:2016-07-05 16:25:58

标签: html json

我一直在尝试将HTML表单转换为Json。当我提交表单时,我的警报只是返回一个空数组。非常感谢任何帮助!

这是表格

<form action="" method="post" name="myForm">
Code (xxxx-xxx):<input type="text" name="drugcode" /> <br/>
<p><input type="submit" onClick='submitform()' /></p>
</form>

这是javascript

<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>

<script language ="javascript" type = "text/javascript" >

function submitform() {

var formData = JSON.stringify($("form[name*='myForm']").serializeArray());
alert(formData);

$.ajax({
  type: "POST",
  url: "serverUrl",
  data: formData,
  success: function(){},
  dataType: "json",
  contentType : "application/json",
 processData: false
 });
}

</script>

所有这一切都是:

[]

编辑: 它现在返回:

[{&#34;名称&#34;:&#34;代码&#34;&#34;值&#34;:&#34; 1234&#34;},{&#34;名称&#34 ;:&#34;等等&#34;&#34;值&#34;:&#34; 4321&#34;}]

我怎么会让它返回: {&#34;代码&#34;:&#34; 1234&#34;&#34;值&#34;:&#34; 4321&#34;}

2 个答案:

答案 0 :(得分:2)

$(&#34; #myForm&#34;)不符合你的表格。 #指定一个id。您需要匹配名称:

$( "form[name='myForm']" )...

答案 1 :(得分:0)

您还可以使用简单的javascript并使用

选择表单
document.querySelector("form[name='myForm']")

document.forms[0]