扫码关注官方订阅号
上图说明obj对象取到了responseText的值。
但这样做为什么不能返回值??
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
ajax是异步,你后面那么做,还没执行回调函数获取responseText,obj是取不到值的。//好像这样表述不对,要取到值,最好是在确认回调执行了才好。 另外,你写的return是在一个function里面,return不到外部去的。
ajax
responseText
obj
return
function
且不说你的异步就不能这样返回值,你的return返回很明显是xmlhttp.onreadystatechange的值,而不是你的loadXMLDoc函数的值。针对异步的问题你要学会使用回调函数。回调函数给我的感觉就是一个一个函数往里面套,我给你写个例子:
xmlhttp.onreadystatechange
loadXMLDoc
function loadXMLDoc(callback) { callback = callback || function() {}; ...... //这里是xmlhttp的一些定义 xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState == 4 && xmlhttp.status == 200) callback(JSON.parse(xmlhttp.responseText)); } ...... //这里是xmlhttp的其它操作 } loadXMLDoc(function(res){ document.write(res[1].week); });
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
ajax是异步,你后面那么做,还没执行回调函数获取responseText,obj是取不到值的。//好像这样表述不对,要取到值,最好是在确认回调执行了才好。另外,你写的
return是在一个function里面,return不到外部去的。且不说你的异步就不能这样返回值,你的
return返回很明显是xmlhttp.onreadystatechange的值,而不是你的loadXMLDoc函数的值。针对异步的问题你要学会使用回调函数。回调函数给我的感觉就是一个一个函数往里面套,我给你写个例子: