我是 JSON 和 Web 开发方面的新手。因此,如果我无法以适当的方式提出问题,请原谅我。
下面是我从站点收到 JSON 响应的情况,但无法显示响应数据,并在控制台中提示错误。
我在 Firefox 和 Chrome 中尝试过。他们都给了我不同的错误。
Firefox =“语法错误:缺少 ; 语句之前
Chrome =“未捕获的语法错误:意外的标记:”
我已经通过 jQuery API 尝试了两种类型的调用。 下面是我的示例代码。
<html>
<body>
<button>Click Me!</button>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
$("button").click(function()
{
$.getJSON("http://rate-exchange.herokuapp.com/fetchRate?from=SGD&to=MYR&lang=en-us&format=json&jsoncallback=?", function(data) {
console.log(data);
var info = JSON.parse(data);
alert(rate);
});
})
</script>
</body></html>
<html>
<body>
<button>Click Me!</button>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script>
$("button").click(function loadRate()
{
$.ajax({
type:'GET',
url:"http://rate-exchange.herokuapp.com/fetchRate",
data:"from=SGD&to=MYR"+"&lang=en-us&format=json&jsoncallback=?",
dataType:'json',
success:function(resp){
var parse = JSON.parse(resp);
alert(parse.Rate);
}
});
})
</script>
</body></html>
我引用的 JSON API 是:http://rate-exchange.herokuapp.com/
响应数据如下:{"To":"MYR","From":"SGD","Rate":"2.5666"}
最佳答案
1) var info = JSON.parse(data);
此行不需要
2) alert(rate);
什么是rate
?
3) .click(function loadRate()
这里的函数不应该有任何名称,只需 .click(function()
4) var parse = JSON.parse(resp);
不需要,当你告诉dataType:'json'
时,jquery 会自动解析 json
关于javascript - JSON:已收到响应但无法在 jQuery 中显示它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26145831/