<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8"> <title></title> </head> <body> <script src="http://static01.baomihua.com/js/lib/jquery-1.4.4.min.js?t=20120926.js"></script> <script> $.ajax({ url: 'http://i.baomihua.com/openAppApi.asmx/GetSJGG', dataType: 'jsonp', jsonp: 'jsoncallback', success: function(data) { if (typeof data !== 'undefined' && typeof data.AppList !== 'undefined') { window.url = data.AppList[0].headimgurl; $('body').append('<div onclick="f()">box</div>'); // 执行到这里,请求跟赋值肯定都完成 } } }); function f() { alert(url); } </script> </body> </html>
跨域请求和dataType:"jsonp"请求不支持同步操作。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。