架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 67|回复: 0

[Jquery] 解决ajax无法给外部变量赋值

[复制链接]
跳转到指定楼层
楼主
发表于 2019-9-27 16:23:10
因为Ajax默认是以异步方式来获取数据的,执行Ajax的时候你程序是继续往下面执行的,这样你那个变量没有被Ajax方法赋值,


  1.   function btnclick() {
  2.             var flag = "";
  3.             console.log(flag)
  4.             $.ajax({
  5.                 type: 'get', // 请求方式
  6.                 dataType: 'text',
  7.                 url: 'js/data.json', // 接口
  8.                 success: function(data) {
  9.                     flag = 'asdasd';
  10.                     console.log(flag);
  11.                 },
  12.                 error: function(data) {
  13.                     flag = 'asdasdasdasdasd';
  14.                     console.log(flag)
  15.                 }

  16.             });
  17.             console.log(flag);
  18.             return flag;

  19.         }
复制代码


在ajax中设置async:false;也就是同步
当async为false的时候,意味着ajax请求为同步的,那么这个API就默认你是直接通过$.ajax()这个方法调用所返回的结果去取值,而不是通过success回调函数进行取值,所以也就不会调用success这个回调函数。



  1.   function btnclick() {
  2.            var flag = "";
  3.             console.log(flag)
  4.             $.ajax({
  5.                 type: 'get', // 请求方式
  6.                 dataType: 'text',
  7.                 url: 'js/data.json', // 接口
  8.                 async: false,  // 同步操作
  9.                 success: function(data) {
  10.                     flag = 'asdasd';
  11.                     console.log(flag);
  12.                 },
  13.                 error: function(data) {
  14.                     flag = 'asdasdasdasdasd';
  15.                     console.log(flag)
  16.                 }

  17.             });
  18.             console.log(flag);
  19.             return flag;

  20.         }
复制代码






上一篇:求分享PHPDisk Z-Core运营版6.6城通模板含15个广告位
下一篇:.NET Core 新功能发布单文件可执行文件
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2019-10-23 18:01

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表