首页 > 代码库 > 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()提交表单