Javascript 如何将false从js中的子事件返回到父事件

Javascript 如何将false从js中的子事件返回到父事件,javascript,jquery,ajax,callback,Javascript,Jquery,Ajax,Callback,以下是我的js代码: $(function () { $('#buyer').on('submit', function (event) { var userCaptcha = $('#jCaptcha').val(); $.post('Jcaptcha', { jcaptcha: userCaptcha }, function (responseText) { if (responseTex

以下是我的js代码:

$(function () {
    $('#buyer').on('submit', function (event) {
        var userCaptcha = $('#jCaptcha').val();
        $.post('Jcaptcha', {
            jcaptcha: userCaptcha
        }, function (responseText) {
            if (responseText !== "") {
                $('#ajaxcall').html(responseText);
                //return from here
            }
        });
    });
});

我想将
false
返回到我的提交事件,这样表单就不会被提交。

您可以使用
event.preventDefault()首先阻止表单提交,而不是在ajax回调中。您的实际提交必须通过ajax进行处理-我假设这就是您的
$.post
中发生的情况

$(function () {
  $('#buyer').on('submit', function (event){
    event.preventDefault(); // dont actually submit natively
    var userCaptcha = $('#jCaptcha').val();
    $.post('Jcaptcha', { jcaptcha : userCaptcha }, function (responseText) {
        if (responseText !== "") {
            $('#ajaxcall').html(responseText);            
        }
    });
  });
});

您可以使用
event.preventDefault()首先阻止表单提交,而不是在ajax回调中提交。您的实际提交必须通过ajax进行处理-我假设这就是您的
$.post
中发生的情况

$(function () {
  $('#buyer').on('submit', function (event){
    event.preventDefault(); // dont actually submit natively
    var userCaptcha = $('#jCaptcha').val();
    $.post('Jcaptcha', { jcaptcha : userCaptcha }, function (responseText) {
        if (responseText !== "") {
            $('#ajaxcall').html(responseText);            
        }
    });
  });
});

那就这么做吧!你的问题是什么?@connexo他不能从那里返回,因为它将从
$.ajax
处理程序返回,而不是
submit
处理程序返回。我怀疑你能否在ajax回调中异步运行
event.preventDefault()在ajax回调结束时…然后这样做!你的问题是什么?@connexo他不能从那里返回,因为它将从
$.ajax
处理程序返回,而不是
submit
处理程序返回。我怀疑你能否在ajax回调中异步运行
event.preventDefault()
,可以吗?首先将ajax async添加为false,然后在ajax回调结束时使用event.preventDefault()。。。。