我刚开始用 $。阿贾克斯()
。这是我的code:
< HTML>
< HEAD>
<冠军>共享应用程序和LT; /标题>
&所述;脚本的src =https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js>&所述; /脚本>
< /头>
<身体GT;
<脚本类型=文/ JavaScript的'>
如果($)的console.log('jQuery的装\ N!');
$(函数(){
$阿贾克斯({
网址: 'http://en.wikipedia.org/w/api.php?action=query&list=allimages&ailimit=5&aifrom=Albert&aiprop=dimensions|mime&format=jsonfm&callback=?'
})
.done(函数(){执行console.log('耶!');})
.fail(函数(){执行console.log('错误!);})
。总是(函数(){执行console.log(完成!);});
});
< / SCRIPT>
< /身体GT;
< / HTML>
由于某种原因,我收到以下错误信息:
XMLHtt prequest无法加载 http://commons.wikimedia.org/w/api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo&iiprop=url&callback=?. 原产地空不受访问控制 - 允许 - 产地允许的。
解决方案更新::此方法是jQuery的1.9 pcated德$ P $。不再工作了。
旧的回答:
试试这个(更新):
$ support.cors = TRUE。
$(函数(){
$.ajax("http://commons.wikimedia.org/w/api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo&iiprop=url&callback=?")
.complete(函数(){警报('完成');})
.error(函数(){警报('错误');})
.success(功能(数据){警报(数据);});
});
更多关于jQuery.support.cors设置在这里: jQuery.support
P.S。感谢一个很好的问题!我相信这将是对我有用的在未来也。
I'm just starting with $.ajax()
. This is my code:
<html>
<head>
<title>Commons app</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
</head>
<body>
<script type='text/javascript'>
if($) console.log('jQuery loaded!\n');
$(function () {
$.ajax({
url: 'http://en.wikipedia.org/w/api.php?action=query&list=allimages&ailimit=5&aifrom=Albert&aiprop=dimensions|mime&format=jsonfm&callback=?'
})
.done(function () { console.log('Yay!'); })
.fail(function () { console.log('Error!'); })
.always(function () { console.log('Complete!'); });
});
</script>
</body>
</html>
For some reason I get the following error message:
XMLHttpRequest cannot load http://commons.wikimedia.org/w/api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo&iiprop=url&callback=?. Origin null is not allowed by Access-Control-Allow-Origin.
解决方案
Update: This method is deprecated from jQuery 1.9. Does not work anymore.
Old answer:
Try this (updated):
$.support.cors = true;
$(function () {
$.ajax("http://commons.wikimedia.org/w/api.php?action=query&generator=allimages&gailimit=4&gaifrom=T&prop=imageinfo&iiprop=url&callback=?")
.complete(function () { alert('complete'); })
.error(function () { alert('error'); })
.success(function (data) { alert(data); });
});
More about jQuery.support.cors setting here: jQuery.support
P.S. thanks for a nice question! I believe it will be useful for me also in future.