用ajax提交表单遇到的问题,虽然有点久远了;但是今天他们遇到了就记录一下。
先说用ajax提交表单
方式一:ajax提交把formAddHandlingFee序列化参数然后提交,获取回传结果,做后续操作
function AddHandlingFeeToRefund()
{
var AjaxURL= "../OrderManagement/";
$.ajax({
type: "POST",
dataType: "html",
url: AjaxURL + '?Action=' + 'SubmitHandlingFee' + '&OrderNumber=' + $.trim($("#<%= %>").val()),
data: $('#formAddHandlingFee').serialize(),
success: function (result) {
var strresult=result;
alert("提交失败");
},
error: function(data) {
alert("提交失败");
}
});
}
方式二:用 插件的作用是实现Ajax提交表单。需要注意的是ajaxSubmit()不会自动阻止表单提交,想阻止表单提交,要自己return false;
$("#form1".submit)(function(){
$("#form1").ajaxSubmit();
return false;
})
$("#MailForm").ajaxSubmit(function(message) {
alert("表单提交已成功!");
});
<pre name="code" class="javascript">$("#goodsForm").ajaxForm(function(mes){
if(mes == "true"){
alert("提交成功");
();
}else{
alert("提交失败");
}
});
注意:ajaxsubmit()与ajaxForm()都可以没有参数或者接受1个参数。该参数既可以是一个回调函数,也可以是一个options对象。该对象功能非常强大,说明如下:
var options={
url:url,//form提交数据的地址
type:type, //form提交的方式(method:post/get)
target:target,//服务器返回的响应数据显示在元素(Id)号确定
beforeSubmit:function(),//提交前执行的回调函数
success:function(), //提交成功后执行的回调函数
dataType:null, //服务器返回数据类型
clearForm:true, //提交成功后是否清空表单中的字段值
restForm:true, //提交成功后是否重置表单中的字段值,即恢复到页面加载时的状态
timeout:6000 //设置请求时间,超过该时间后,自动退出请求,单位(毫秒)。
}