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

  • 相关阅读:
    基础1-安装zookeeper
    Logstash-input-file 配置
    Logstash-input-rabbitmq 配置
    EF 部分更新 忽略NULL
    CoreApi 3.1
    logstash基于RabbitMQ的输入配置
    史上最详细的linux三剑客讲解-grep-awk-sed
    CDN概述
    HttpDNS和传统DNS的区别
    Linux性能分析工具之----mpstat
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3100624.html
Copyright © 2011-2022 走看看