我有一个为用户找到lat和lng坐标的函数:
function geoFindMe() {
var output = document.getElementById("out");
if (!navigator.geolocation){
output.innerHTML = "<p>Geolocation is not supported by your browser</p>";
return;
}
function success(position) {
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
output.innerHTML = '<p>Latitude is ' + latitude + '° <br>Longitude is ' + longitude + '°</p>';
var img = new Image();
img.src = "https://maps.googleapis.com/maps/api/staticmap?center=" + latitude + "," + longitude + "&zoom=13&size=300x300&sensor=false";
output.appendChild(img);
}
function error() {
output.innerHTML = "Unable to retrieve your location";
}
output.innerHTML = "<p>Locating…</p>";
navigator.geolocation.getCurrentPosition(success, error);
}
我希望能够将lat和lng值传递给我的ajax请求。
$(document).ready(function(){
$('.submitLocation').click(function(){
$.ajax({
url:
问题是当我在.ready函数内部时,我不知道如何传入ajax请求。 (.click函数用于当用户输入搜索词时,但添加地理位置意味着这不是必需的,因此我将其改为:如果latitute不为null,则执行x else .click(function))。
答案 0 :(得分:0)
我最终创建了另一个带有另一个ajax请求的函数来处理lat和lng的请求。
function geoFindMe() {
function success(position) {
var latitude = position.coords.latitude;
var longitude = position.coords.longitude;
$.ajax({
url: "https://api.openweathermap.org/data/2.5/forecast?lat=" + latitude + "&lon=" + longitude + "&units=metric" + "&APPID=ID",
type: "GET",