叫我学弟 2020-06-02 11:11 采纳率: 0%
浏览 244
已采纳

jQuery中Ajax非异步请求回调函数内修改全局变量的问题

有这样一段JavaScript代码:

图片说明

JS文件最开始定义了一个each_angle_radiation全局变量,初始值为1

网页加载时通过POST向后台发送ajax请求,返回json格式数据,在ajax回调函数内将数据赋值给each_angle_radiation变量(代码第56行),值为一个列表。

ajax请求外部定义了一个setChart函数,这个函数需要使用each_angle_radiation这个全局变量。

页面内有一个下拉选择框,class=angle-selector,选择值改变时触发change事件,执行setChart函数。

但当change时间触发setChart函数时,函数内调用each_angle_radiation的变量值仍为初始值1,而不是ajax内赋值的列表。

按照网上的做法,将异步改为非异步(async=false),但仍无法解决,是我的情况比较特殊么或者是代码哪里不对么,求大佬解答~

  • 写回答

1条回答 默认 最新

  • 打杂的程序员 2020-06-02 11:24
    关注

    你哪里设全局变量了,你如果设置了each_angle_radiation全局变量,ajax方法里的就不要用var了,直接each_angle_radiation

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 BDSBAS-B1C和B1C信号有什么不同
  • ¥15 在半圆平面内随机生成点坐标
  • ¥15 系统容量变化的几种多址方式TDMA, CDMA,FDMA,OFDMA 对比,应该给的是一个曲线 图,随着系统容量的增加,几种多址方式性能的对比 图,MATLAB程序仿真折线图
  • ¥15 用visual Studio 写c ++只运行上一个旧代码的运行结果是怎么回事
  • ¥15 系统容量变化的几种多址方式(TDMA,FDMA,OFDMA,CDMA)对比(相关搜索:曲线图)
  • ¥15 worldclim 历史及未来气候数据矫正
  • ¥15 ajax服务器不能下载
  • ¥15 运用c++和opencv实现二维码的识别和三维坐标的建立
  • ¥100 理想汽车的ADB为什么到了国外换了SIM就可以打开?
  • ¥15 k210烧入flash报错error:2005