zoukankan      html  css  js  c++  java
  • jQuery ajax异步跨域提交表单实例解析

    结果仍然不起作用。最后解决方案有2,如下

    1、添加async:false.即修改为同步了,什么意思?(按同事解释就是,这是等这个ajax有了返回值后才会执行下面的网页特效。一语道破天机,怪不得以前很多ajax调用里面的赋值都不起作用)。这样等ajax给bol赋值完毕后,才执行下面的网页特效部分。而刚刚异步的话,还没有来得及赋值,就已经return了。


    代码 
    复制代码 代码如下:
    function getajaxreturn() 

    var bol=false; 
    $.ajax({ 
    type:"post", 
    async:false, 
    http://www.111cn.net/userexist.aspx",   url :一个action  的url 
    data:"username="+vusername.value, 
    success:function(msg){ 
    if(msg=="ok"){ 
    showtipex(vusername.id,"<img src='images/ok.gif'/><b><font color='#ffff00'>该用户名可以使用</font></b>",false) 
    // return true; 
    bol=true; 

    else 

    showtipex(vusername.id,"<img src='images/cancel.gif'/><b><font color='#ffff00'>该用户已被注册</font></b>",false); 
    vusername.classname="bigwrong"; 
    //return false; 


    }); 
    return bol; 
    }

    2、 通过传入一个函数解决这个问题。

    代码 
    复制代码 代码如下:
    function getajaxreturn(success_function,fail_function) 

    var bol=false; 
    $.ajax({ 
    type:"post", 
    http://www.111cn.net/userexist.aspx", 
    data:"username="+vusername.value, 
    success:function(msg){ 
    if(msg=="ok"){ 
    showtipex(vusername.id,"<img src='images/ok.gif'/><b><font color='#ffff00'>该用户名可以使用</font></b>",false) 
    success_function(msg); 

    else 

    showtipex(vusername.id,"<img src='images/cancel.gif'/><b><font color='#ffff00'>该用户已被注册</font></b>",false); 
    vusername.classname="bigwrong"; 
    fail_function(msg); 
    //return false; 


    }); 
    function success_function(info) 

    //do what you want do 
    alert(info); 

    funciont fail_function(info) 

    //do what you want do 
    alert(info); 
    }

  • 相关阅读:
    图片懒加载
    文字表情转换成小图标
    页面跳页面的参数获取
    vue v-for里面再套v-if和v-esle
    滚动条样式的修改
    vue-cil生产环境和发布环境的配置
    css隐藏滚动条并且可以滑动
    vue-cli脚手架一些插件安装elementui和axios
    闭包
    定时器、运动、日历
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3100624.html
Copyright © 2011-2022 走看看