在给出返回false之后提交表单

Nir*_*ana 2 javascript php forms ajax jquery

我阻止它提交后我想提交一份表格.
我在StackOverflow上看到了一些问题,但没有一个对我有用.

这是代码:

$(function(){
    $("#loginform").submit(function(){
      var username = $("#user").val();
      $.get( "go.php?action=check_username&username=" + username  )
        .done(function( data ) {
            console.log(data);
            if (data.indexOf("ok") >= 0) {$("#loginform").submit();}
            else {alert("Username doesn't exist");}
      })            
        return false;
    });
});
Run Code Online (Sandbox Code Playgroud)

如果用户名存在,它只是一次又一次地运行ajax,从不提交表单.

提前致谢.

Tim*_*m B 5

你的问题是你已经覆盖了$("#loginform").submit(); - 即使你尝试从你的javascript代码提交它,你将再次回到相同的功能.

而是覆盖按钮单击/返回按下/ etc事件并对其进行比较而不是登录表单提交.现在,您可以在执行检查后自行提交表单.

我实际上这样做的方法是从禁用提交按钮开始,并为各种字段中的文本更改放置一个监听器.通过监听该字段中的更改来验证输入的每个字段,如果它们有效则显示勾号(或其他).

然后,每个字段有效后启用提交按钮.