javascript - ajax中怎么给调用的文档一个返回值
PHPz
PHPz 2017-04-10 18:10:26
[JavaScript讨论组]
function GetData (url) {
    // var myUrl = "http://c.m.163.com/nc/article/list/T1350383429665/0-20.html";
    var myUrl = url;
    var WYresult = null;
    var url = 'http://localhost:3000/?myUrl=' + myUrl;
        $.ajax({
            url:url,
            type:'get',
            dataType:'json',
            async: true,
            success:function (result) {
                // console.log(JSON.parse(result));
                WYresult = JSON.parse(result);
            },
            error:function () {
                
            }
        });
    var WYObject = WYresult;    
    return WYObject;    
}

我想在外部调用这个构造函数的时候返回的就是JSON解析过的对象,但是只有当async为false时才行,但是当有多个请求时浏览器就会出现锁死状态,怎么解决?

PHPz
PHPz

学习是最好的投资!

全部回复(2)
伊谢尔伦

因为这涉及远程数据获取,不是实时的,所以必然有延迟。async表示请求同步方式,为true表示需要获取数据后才执行后续的程序,否则为非同步进程(浏览器继续处理后续动作)。

对于需要处理的就是需要采用非同步获取,这样才不阻塞浏览器进程(阻塞时浏览器呈现死锁态),通过回调执行后续处理。

ringa_lee

调整为异步执行 执行代码写到ajax成功执行的括号中

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号