【问题标题】:ASP MVC prevent submit form with jquery function on separate js fileASP MVC 防止在单独的 js 文件上使用 jquery 函数提交表单
【发布时间】:2014-11-04 13:03:32
【问题描述】:

我正在尝试使用以下代码通过 ajax 提交表单:

$(document).on('submit', '#form-discount', function (e) {

  e.preventDefault()

  $.ajax({
        cache: false,
        async: true,
        type: 'POST',
        url: $(this).attr('action'),
        data: $(this).serialize(),
        beforeSend: function () {

        },
        success: function (data) {

        },
    });
});

但这是在到达此 javascript 代码之前到达控制器,因此它会命中两次控制器操作。我怎样才能避免这种行为?谢谢

【问题讨论】:

    标签: jquery asp.net-mvc


    【解决方案1】:

    您需要在回调中返回 false 以阻止页面执行完整的回发。

    类似这样的:

    $(document).on('submit', '#form-discount', function (e) {
    
        e.preventDefault()
    
        $.ajax({
            cache: false,
            async: true,
            type: 'POST',
            url: $(this).attr('action'),
            data: $(this).serialize(),
            beforeSend: function () {
    
            },
            success: function (data) {
    
            },
        });
        return false;//stop postback
    });
    

    【讨论】:

    • 这不起作用。问题是提交在 $(document).on 提交函数之前到达控制器操作。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 2015-08-20
    • 2012-06-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多