我知道也有一些类似的问题,但它们对我没有帮助。我在Scala Play Framework中这样做。我在下面发布我的代码:
var saveNameRequest;
function saveName(){
if(!saveNameRequest){
saveNameRequest=$.ajax({
type:"POST",
url:"edit?editType=saveName",
data: $("#nameForm").serialize(),
complete:function(){saveNameRequest=false},
success: function(data){
alert($("#nameForm").serialize())
}//end success
});
}
}
表单序列化不起作用,并且正在打印空字符串。没有任何内容通过帖子,请帮忙
<form method="POST" name="nameForm" id="nameForm">
<tr>
<td><font color=#3b5999>First Name:</font></td>
<td><input type="text" name="fname" id="fname" value="@fName"></td>
</tr>
<tr>
<td><font color=#3b5999>Middle Name:</font></td>
<td><input type="text" placeholder="optional" name="mname" id="mname" value="@mName" ></td>
</tr>
<tr>
<td><font color=#3b5999>Last Name:</font></td>
<td><input type="text" name="lname" id="lname" value="@lName"></td>
</tr>
<tr>
<td></td>
<td><input name="save" id="save" type="button" value="save" onClick="saveName()"></td>
</tr>
</form>
我发现表单序列化不适用于 Scala 2.10 中的 facebox我们必须发送所有字段的数据,这是我得到的唯一解决方案,
data:{
"fname":document.getElementById("fname").value,
"mname":document.getElementById("mname").value,
"lname":document.getElementById("lname").value
}
您尚未关闭saveName()
函数。关闭后尝试。另外,请确保saveName()
在document.ready()
之外。
向 ajax 数据参数添加一个键以发送序列化字符串,如下所示:
data: { formData: $("#nameForm").serialize() },
编辑了小提琴,似乎可以工作