求大神解答,为啥调用方法时返回值为undifine
javascript吧
全部回复
仅看楼主
level 1
-暮湮塵- 楼主
2020年03月29日 04点03分 1
level 1
-暮湮塵- 楼主
上面那个方法直接输入url可以看到json
2020年03月29日 04点03分 2
level 1
-暮湮塵- 楼主
直接输url可以看到data
2020年03月29日 04点03分 3
level 12
console.log(typeof response) 看看类型是不是字符串 如果是就用JSON.parse(response) 转一下
2020年03月29日 05点03分 5
结果是字符串,我觉得是ajax异步的问题。现在把ajax改成同步,能在普通页面获取到返回值了。但是我想在另一个同步ajax里调用这个方法,两个同步就卡住了。。
2020年03月29日 05点03分
@-暮湮塵- 呸,结果是json...打错字了
2020年03月29日 05点03分
@-暮湮塵- 你的意思改成同步问题就解决了? (看你 data 一开始是 null 报错是 undefined 还以为不是这个问题)
2020年03月29日 06点03分
@丶影-奈斯 改成同步可以在其他地方调用,但是不能到其他同步的地方调用
2020年03月29日 09点03分
level 1
异步问题
2020年03月29日 14点03分 6
level 1
6楼正解 你的getstudent 函数没有等待ajax请求的返回结果就返回了data这时候data还是null你对null取属性可不就是undefined吗
2020年03月29日 15点03分 7
哦哦,我懂了[惊哭]
2020年03月30日 00点03分
奇怪了 如果data返回值是null在对其访问stu_name属性 报错的因该是 Uncaught TypeError: Cannot read property 'stu_name' of null 才对呀 [疑问]
2020年03月30日 01点03分
@丶影-奈斯 你是对的 我说错了 事实也是抛出异常
2020年03月30日 01点03分
@Jji🐑 嗯 所以我在想success有执行过 会不会里面参数值得问题 大佬觉得呢
2020年03月30日 02点03分
level 12
@Jji🐑
一开始也想过是不是异步的问题 但是看了他的报错 就没这么想了 但楼主说换同步就解决了
2020年03月30日 01点03分 8
level 6
for循环里面嵌套ajax?ajax请求是需要时间的啊,而for循环很快的
2020年03月30日 02点03分 9
我觉得大概就是这个原因,我把后台mybatis改了改,用多表查询拿结果就完事了。我这也是轴了老想解决js问题
2020年03月30日 09点03分
level 2
ajax是异步的,访问的时候挂起,此时继续执行,已经return了,返回的null,所以拿不到。
2020年03月30日 10点03分 10
level 5
async await解决
2020年04月12日 03点04分 11
1