jQuery .getJSON不能正常工作
我只是在学习如何利用jquery和jquery,并且我碰到了一个我不明白的砖墙。jQuery .getJSON不能正常工作
这里是我的代码 - 非常简单的代码:
$("#click").click(function() {
$.getJSON("http://localhost/jsontest/a.json", function(data) {
alert("done");
});
});
基本上,负载a.json并发送警报到屏幕说法完成。
这里是a.json的内容:
{ “完成”: “37”}
就是这样。
尽管没有显示警报,但它不起作用。
任何想法的人?
我打赌这样的:你忘了安装程序代码在<script>
区块之后您的“单击”元素或“准备就绪”处理程序中:
$(function() {
$('#click').click(function() { /* ... same stuff as you have ... */ });
});
从萤火虫返回有错误吗?
我想通过改变开始:
$.getJSON("http://localhost/jsontest/a.json?callback=?", function(data) {
到:
$.getJSON("http://localhost/jsontest/a.json", 'callback=?', function(data) {
从Firefox返回没有错误 - 我试着用... a.json?callback =? - 仍然没有工作。 它现在可以工作 - 警报(data.done)做到了。 谢谢你们:-) – icecreamsoop 2010-07-08 13:19:22
所以当你说“警报没有显示”,你的意思是“警报发生,但它只包含'done'这个词? – Pointy 2010-07-08 13:25:55
试试这个:
$.getJSON("http://localhost/jsontest/a.json", { }, function(data) {
alert(data.done);
});
我刚刚遇到了一个问题,那就是我没有格式化正在检索的文件中的数据。如果文件中的JSON有任何问题,它会自动失败。尽管你总是可以添加.fail(函数)来检测失败。
我用的是:{ varname:"my string" }
当我本来应该使用:{ "varname":"mystring" }
出于这个原因,我认为这可能是最好使用去检索与$获得(数据),然后使用JSON.parse()就可以了。这样你就知道get或parse是否失败。
http://livehttpheaders.mozdev.org是你的朋友。 – Anders 2010-07-08 13:10:06
发出请求的页面的网址是什么? – 2010-07-08 13:17:00
嗯,这是一个JSON“得到”,所以不应该是一个问题... – Pointy 2010-07-08 13:19:02