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); 
    }

  • 相关阅读:
    静态数组和动态数组
    C#实现两个时间相减的方法
    360安全卫士为什么无法登录用户,显示网络失败,请检查网络,可是网络连接正常。
    WPS Word查询某些内容的出现次数
    安装安全狗后,MP4无法播放
    图片上传Security Error
    JS 构造图片Image对象
    c#截取图片
    VS2013快捷键
    WPS之替换样式
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3100624.html
Copyright © 2011-2022 走看看