从JSON API响应中获取值,将它们放入网页中

时间:2016-01-29 03:29:35

标签: javascript jquery html json api

今天我有一个问题,其他人看起来有点简单。我刚刚学习如何使用API​​ / JSON,我有点困惑。我试图从这个openweathermap.org API响应中获取温度并将其显示在html标记中。

我所知道的javascript是抓住温度并将其设置为var。我很困惑为什么我不能使用id =""在标签内设置文本。下面的代码是我到目前为止的代码。我感谢你的时间。

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script type="text/javascript">
var weather;
var temp;
$(document).ready(function() {
$.ajax({
    url: "http://api.openweathermap.org/data/2.5/weather?q=London,uk&appid=44db6a862fba0b067b1930da0d769e98&units=metric",
    dataType: 'jsonp',
    success: function(weather){
    var temp = weather.main.temp;
}
}); 
</script>
</head>
<body>
<p id="temp"></p>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

@ArunPJohny已经识别出错误:1)缺少})和2)使用$('#temp')来获取HTML元素。此外,您不需要声明weather,因为它被声明为参数。

$(document).ready(function() {
  $.ajax({
    url: "http://api.openweathermap.org/data/2.5/weather?q=London,uk&appid=44db6a862fba0b067b1930da0d769e98&units=metric",
    dataType: 'jsonp',
    success: function(weather) {
      $('#temp').text(weather.main.temp);
    }
  });
});
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<p id="temp"></p>