Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将用户地理位置从客户端传递到服务器端_Javascript_Django_Html_Geodjango - Fatal编程技术网

Javascript 将用户地理位置从客户端传递到服务器端

Javascript 将用户地理位置从客户端传递到服务器端,javascript,django,html,geodjango,Javascript,Django,Html,Geodjango,我正在使用谷歌地理定位API在客户端获取用户位置,并试图将其传递给服务器端以执行位置查询 我无法向服务器端获取用户位置/pos变量(lat,lng),因为只有在用户接受使用其当前位置后,才将此值分配给输入变量(位置),该位置是服务器使用“GET”方法的一个实例,反之亦然 我非常感谢您在从客户端到服务器端获取lat和lng方面给予我的帮助 下面是我在geolocation.html中使用的表单 <form id = "geolocation" action="" method="GET"&g

我正在使用谷歌地理定位API在客户端获取用户位置,并试图将其传递给服务器端以执行位置查询

我无法向服务器端获取用户位置/pos变量(lat,lng),因为只有在用户接受使用其当前位置后,才将此值分配给输入变量(位置),该位置是服务器使用“GET”方法的一个实例,反之亦然

我非常感谢您在从客户端到服务器端获取lat和lng方面给予我的帮助

下面是我在geolocation.html中使用的表单

<form id = "geolocation" action="" method="GET">
<input type="text" id = "location" name="location" value="">
<input type="submit" />
</form>

当用户接受共享其位置时,您必须添加成功/错误回调以触发事件:

navigator.geolocation.getCurrentPosition(success, error);
function success(position){
    var lat = position.coords.latitude;
    var lon = position.coords.longitude;
    document.getElementById('location').value = lat + ',' + lon;
}

function error() {
    // do something with the error message
}

为什么不显示获取职位详细信息的代码。您没有关闭输入字段
location
?@epascarello我包含了获取职位详细信息的代码摘录。@putvande是的,这是一个输入错误。我添加了作为地理位置API一部分的触发器。为谷歌地理定位API干杯。
navigator.geolocation.getCurrentPosition(success, error);
function success(position){
    var lat = position.coords.latitude;
    var lon = position.coords.longitude;
    document.getElementById('location').value = lat + ',' + lon;
}

function error() {
    // do something with the error message
}