gpt4 book ai didi

javascript - 一切正常,除了 Ajax

转载 作者:行者123 更新时间:2023-12-02 14:22:25 25 4
gpt4 key购买 nike

调用 openweather API。当我在浏览器中输入 URL 时,我可以看到 JSON 对象。但是我下面的 ajax 不允许任何内容出现在我的 HTML 中。即使我想 document.write 整个 json 对象,我也做不到。我可以输出刚刚找到的纬度和经度,这样地理位置就可以工作了。不确定这段代码有什么问题。

这是 HTML:

<body>
<div class="container">
<div class="col-lg-12 header">
<h1>My Location</h1>
</div>
<div class="row text-center box">
<div class="col-lg-12" id="data">Lat Long</div>
</div>
</div>
</body>

这是 JS:

$(document).ready(function() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(main);
}
});
function main(position){
var lat = position.coords.latitude;
var long = position.coords.longitude;
var api = "http://api.openweathermap.org/data/2.5/weather?lat=" + lat + "&lon=" + long + "&appid=[redacted key]";
$.ajax({
dataType: 'json',
url: api,
success: function(data) {
city = data.name;
$("#data").html(city);
}
});
}

最佳答案

尝试$.getJson而不是$.ajax :
$.getJSON( {
dataType: 'jsonp',
url: api,
success: function(data) {
city = data.name;
$("#data").html(city);
}

在 HTML 中,确保添加 jquery:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.js"></script>
<script src="a.js"></script>
//不管你的 js 文件叫什么名字

在不修改您的代码的情况下,页面会要求访问我的位置,然后显示我当前的城市。我不确定它应该输出什么。您期望输出是什么?

关于javascript - 一切正常,除了 Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38547401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com