使用字段来完成API调用(Dark Sky Forecast API)
Using fields to complete an API call (Dark Sky Forecast API)
所以我一直在玩弄黑暗天空预报API,我能够得到我自己的位置的天气显示在一个网页上。然而,我硬编码了经度和纬度,我想更进一步,让用户输入他们自己的。这是它停止工作的地方
之前我的代码只是简单的
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script>
//Waits until document is ready to run
jQuery(document).ready(function($) {
//Beginning of code
//Makes the request
$.ajax({
url : "https://api.darksky.net/forecast/MyKey/1111,-1111+?exclude=minutely,hourly,daily,alerts,flags",
dataType : "jsonp",
success : function(parsed_json) {
var location = parsed_json['timezone'];
var temp_f = parsed_json['currently']['temperature'];
var complete = ("Current temperature in " + location + " is: " + temp_f);
$('#random').html("<h1>" + complete + "</h1>")
}
});
}
});
</script>
$('#search').click(getInfo);
});
</script>
然后我创建了一些HTML字段(我使用bootstrap只是为了保持整洁)像这样
<div class="input-group input-group-lg">
<input id="long" type="text" class="form-control" placeholder="Longitude" aria-describedby="sizing-addon1">
</div>
<div class="input-group input-group-lg">
<input id="lat" type="text" class="form-control" placeholder="Latitude" aria-describedby="sizing-addon1">
</div>
<div class="rand">
<button class="btn btn-primary btn-lg" role="button" id="search">Find my location and temperature!</button>
</div>
我更新了我的脚本,看起来像这样
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script>
//Waits until document is ready to run
jQuery(document).ready(function($) {
//Beginning of code
var getInfo = function(){
//Grabs the longitude and latitude
var Longitude = $('#long').val();
var Latitude = $('#lat').val();
//Makes the request
$.ajax({
url : "https://api.darksky.net/forecast/mykey/" + Longitude + ","+ Latitude + "+?exclude=minutely,hourly,daily,alerts,flags",
dataType : "jsonp",
success : function(parsed_json) {
var location = parsed_json['timezone'];
var temp_f = parsed_json['currently']['temperature'];
var complete = ("Current temperature in " + location + " is: " + temp_f);
$('#random').html("<h1>" + complete + "</h1>")
}
});
}
$('#search').click(getInfo);
});
然而,在这一点上,它只是不起作用。我点了按钮,什么也没发生。也许我在HTML部分做错了,因为我几乎没有对脚本做任何改变,所以我猜这不是问题。
非常感谢!
算了,我明白了。我做的一切都是正确的,我不小心在url中放了一个加号…哎呀。
相关文章:
- 如何更改bigquery API中的计费层选项
- Amazon S3 REST API大小不正确
- 客户端服务器REST API captcha实现
- 使用Facebook live API创建实时视频对象时的隐私设置
- 谷歌放置API:按国家或餐馆名称搜索餐馆
- MeteorJS:在带有回调的vzaar api上正确使用wrapAsync
- 是否可以控制获取哪些Google地图脚本(JavaScript API)
- API密钥使用和检查示例
- 谷歌地图API v3不适用于移动浏览器或PhoneGap
- 任何方式使AJAX调用Gmail API,而无需通过JS库
- 谷歌地图JS API+JSON-多个标记没有显示
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 如何在 API 调用后和 if 语句中启用提交按钮
- 与运行长作业(javascript,node.js)的第三方API同步的最佳实践
- 搜索api在mac上显示对话框
- Backbone.js restful json API design
- 标记的实时更新,无需加载页面谷歌地图API V3
- 是否可以使用iframe API在iOS浏览器上播放youtube视频
- 对API数据使用声明性绑定
- 使用字段来完成API调用(Dark Sky Forecast API)