zoukankan      html  css  js  c++  java
  • onsubmit ajax return false 无效

    var flat=false;             return flat;      async:false,        是重点。
     

    执行ajax时return false的function 与onsubmit()不是同一个函数,所以无论return 什么都会直接执行submit()提交表单

    在执行ajax时,async默认的默认值为true,这种情况为异步方式,就是说ajax发送请求后,在等待服务端返回的这个过程中,前台会继续执行ajax块后面的脚本,直到服务端返回正确的结果才会执行success,也就是说这时执行的是两个线程,一个线程在执行ajax时另一个进程已经执行return flat了。所以一直返回false.把async改为false,这时才是同步方式,只有一个线程。

    function checkNewEmail(){
                 var flat=false;
                 var re_email=new RegExp("\w+@\w+\.\w+\.?\w*");
                 var newEmail=$("#email_new").val();
                 if(re_email.test(newEmail)){
                     $.ajax({
                         type:"post",
                         dataType:"json",
                         async:false,//同步方式
                         url:"existEmail?email="+newEmail,
                         success:function(dataResult){
                             if(dataResult=="true"){
                                 $("#emial-error").text("邮箱已注册。");
                                 flat=false;
                             }else{
                                 flat=true;
                             }
                         }
                     });
                 }else{
                     $("#emial-error").text("邮箱格式不正确。");
                     return false;
                 }
                 return flat;
             }
     


    ---------------------
    作者:Boh_
    来源:CSDN
    原文:https://blog.csdn.net/u010079945/article/details/38680769
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    【Codeforces Round #432 (Div. 1) B】Arpa and a list of numbers
    【Codeforces Round #433 (Div. 1) B】Jury Meeting
    【 2017 Multi-University Training Contest
    【Codeforces Round #433 (Div. 2) C】Planning
    JavaEE(15)
    谓词推入引发的惨案
    子查询解嵌套in改写为exists
    子查询解嵌套not in 无法展开改写
    dump datafile block
    关于v$sql_bind_capture 的问题
  • 原文地址:https://www.cnblogs.com/runliuv/p/10338456.html
Copyright © 2011-2022 走看看