jQuery: a function containing an ajax() function won't return ajax() response
为了使我的jQuery代码模块化,即可重用,我在另一个函数
但是这种情况并没有发生 - 相反,
这是代码:
1 2 3 4 5 6 7 8 9 | function fetch_ajax(url) { $.ajax({ type: 'GET', url: url, success: function(response) { return response; } }); } |
调用功能:
1 2 3 4 | function caller() { response = fetch_ajax('script.php'); alert(response); //this is always 'undefined' } |
在
当我在
我究竟做错了什么?
谢谢。
你的想法是错误的 -
请参阅如何让jQuery在返回之前等待Ajax调用完成? 用于同步请求解决方案。 它比另一个简单得多,但如果服务器正常死亡,或者一个过度活跃的防火墙阻止了答案或者愤怒的lolcat在途中吃掉你的请求,它会挂起你的浏览器。