繁体   English   中英

提交表单后可以发起ajax调用吗?

[英]Is it ok to initiate an ajax call after form submission ?

提交表单后,将发出ajax发布请求。

提交表单后,我想打电话给ajax发布。

但是ajax调用是在表单提交之前发出的,我是否需要延迟ajax调用? 表单提交后该怎么办?

通过提交表单,我正在调用添加函数来保存数据

$("#section-form").submit(function (e) {


    save_class_info();

});

function save_class_info() {

   var  action = 'saveclassinfo';


    var campus_info = {
        'campus_name': campus_name,
        'shift_name': shift_name,
        'medium_name': medium_name,
        'class_name': class_id,
        'teacher_id': teacher_id,
        'edit': 'false'
    };

    $.ajax({
        url: "/" + root + "/" + controller + "/" + action,
        type: "post",
        data: campus_info,
        success: function (response) {

            console.log('done');
        },
        error: function (jqXHR, textStatus, errorThrown) {
            console.log(textStatus, errorThrown);
        }


    });
}

您需要使用preventDefault禁用默认的表单提交行为:

$("#section-form").submit(function (e) {
    e.preventDefault();
    save_class_info();
});

尝试防止表单提交。

$("#section-form").submit(function (e) {
    e.preventDefault();
    e.stopPropagation();
    save_class_info();
});

那是我的错误。在提交表单期间,我无法发出ajax调用,因为提交表单后,该页面将被刷新。 因此,我通过另一个ajax调用完成了表单的提交,在该调用之后,我发布了另一个ajax发布,因为我需要从第一次ajax调用成功中获取数据。

谢谢大家让我知道我的方法的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM