首页 > 代码库 > ajaxSubmit()提交表单
ajaxSubmit()提交表单
1.表单提交
submit() 方法触发 submit 事件,或规定当发生 submit 事件时运行的函数。$(selector).submit(function)
使用 preventDefault() 函数来阻止对表单的提交。
ajaxSubmit()提交表单,使用第三方插件jquery.form实现;
通常情况下,我们直接通过form提交的话, 提交后当前页面跳转到form的action所指向的页面。然而,很多时候我们比不希望提交表单后页面跳转,那么,我们就可以使用ajaxSubmit(obj)来提交数据。
$(‘button‘).on(‘click‘, function() {
$(‘form‘).on(‘submit‘, function() {
var title = $(‘inpur[name=title]‘).val(),
content = $(‘textarea‘).val();
$(this).ajaxSubmit({
type: ‘post‘, // 提交方式 get/post
url: ‘your url‘, // 需要提交的 url
data: {
‘title‘: title,
‘content‘: content
},
success: function(data) { // data 保存提交后返回的数据,一般为 json 数据
// 此处可对 data 作相关处理
alert(‘提交成功!‘);
}
$(this).resetForm(); // 提交后重置表单
});
return false; // 阻止表单自动提交事件,必须返回false,否则表单会自己再做一次提交操作,并且页面跳转
});
});
如果要提交之后返回数据再触发ajax异步交互(实际就是一个按钮触发两个事件,后一个事件要等前一个事件完成的情况才触发)
$("#uploadImage").on("submit",function () { //触发form表单提交,url写在form标签
$("#uploadImage").ajaxSubmit(options); // form表单提交后触发
return false; // 必须返回false,否则表单会自己再做一次提交操作,并且页面跳转
});
var options = {
//target: ‘#picSrc‘, //把服务器返回的内容放入id为picSrc的元素中
//beforeSubmit: function({
}), //提交前的回调函数
success:function (backData) { //提交后的回调函数
var sendData=http://www.mamicode.com/{
"srcImageFile":backData.serviceIcon,
"result":backData.serviceIcon,
};
$.ajax({
url:"/Wisdom/smartCampus/service/cutPicture",//交互地址
type:"post",//方法
//dataType:"json",
contentType:"application/json",//头部
data:JSON.stringify(sendData),//数据
success:function (backData) {
$("#uploadImage").resetForm();//重置表单
}
})
},
timeout: 3000 //限制请求的时间,当请求大于3秒后,跳出请求
};
ajaxSubmit()提交表单