• 解决ajax无法给js全局变量赋值的问题


    解决ajax无法给js全局变量赋值的问题


    http://blog.csdn.net/qq_26222859/article/details/51543433

     

    ajax中是无法给js中的全局变量赋值的,因为ajax默认是异步请求(当要赋值时,此时的值没有拿到,所以赋值不成功)。例如:

    1. function test(){
    2.   var result=0;
    3.   $.ajax({  
    4. type: "POST",  
    5. url: "ajax/checkfor1.php?action=reg_checkEmail",          
    6. data: {email:email},   
    7. dataType: 'text',     
    8. success: function(data){                                                      
    9. results=data;  
    10. },  
    11. error: function() {     
    12.                alert("异常!");    
    13.       }    
    14. });
    15. }

     

    执行时会发现赋不进去值

    解决办法1:将ajax请求设置为同步请求

    1. function test(){
    2.   var result=0;
    3.   $.ajax({  
    4. type: "POST",  
    5. url: "ajax/checkfor1.php?action=reg_checkEmail",          
    6. data: {email:email},   
    7. dataType: 'text',     
    8.       async: false, //设置为同步请求
    9. success: function(data){                                                      
    10. results=data;  
    11. },  
    12. error: function() {     
    13.                alert("异常!");    
    14.       }    
    15. });
    16. }

    解决办法2:不使用js全局变量存数据而是用隐藏的html标签存数据

    1. function test(){
    2.   var result=0;
    3.   $.ajax({  
    4. type: "POST",  
    5. url: "ajax/checkfor1.php?action=reg_checkEmail",          
    6. data: {email:email},   
    7. dataType: 'text',     
    8. success: function(data){                                                      
    9.               $('#datastore').append('<div data='+data+'></div>');//使用一个div标签,定义一个自定义属性data来存储数据
    10. },  
    11. error: function() {     
    12.                alert("异常!");    
    13.       }    
    14. });
    15. }

     

  • 相关阅读:
    Ubuntu 开机启动是出现 grub rescue 解决办法
    OpenvSwitch Port Mirror in OpenStack Neutron
    Protobuf 在Ubuntu 14上的编译与使用
    Linux screen 常用命令
    OpenStack/devstack with Neutron on Ubuntu 14 (1)
    osprofiler在openstack Cinder里的使用
    基于SSH协议的端口转发
    HA 技术简介
    Socket Receive数据一次性接收不全的问题
    【转】本文对C#虚函数virtual进行详解。
  • 原文地址:https://www.cnblogs.com/zealousness/p/8757950.html
Copyright © 2020-2023  润新知