Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.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 Google Map V3-将地理位置数据放入隐藏字段_Javascript_Google Maps - Fatal编程技术网

Javascript Google Map V3-将地理位置数据放入隐藏字段

Javascript Google Map V3-将地理位置数据放入隐藏字段,javascript,google-maps,Javascript,Google Maps,我有一个谷歌地图,它使用W3C地理定位来获取个人位置。我想知道如何将初始位置的lat和lng放入隐藏区域 // Try W3C Geolocation (Preferred) if(navigator.geolocation) { browserSupportFlag = true; navigator.geolocation.getCurrentPosition(function(position) {

我有一个谷歌地图,它使用W3C地理定位来获取个人位置。我想知道如何将初始位置的lat和lng放入隐藏区域

        // Try W3C Geolocation (Preferred)
        if(navigator.geolocation) {
            browserSupportFlag = true;
            navigator.geolocation.getCurrentPosition(function(position) {
                initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);
                map.setCenter(initialLocation);
            }, function() {
                handleNoGeolocation(browserSupportFlag);
            });
            // Try Google Gears Geolocation
        } else if (google.gears) {
            browserSupportFlag = true;
            var geo = google.gears.factory.create('beta.geolocation');
            geo.getCurrentPosition(function(position) {
                initialLocation = new google.maps.LatLng(position.latitude,position.longitude);
                map.setCenter(initialLocation);
            }, function() {
                handleNoGeoLocation(browserSupportFlag);
            });
            // Browser doesn't support Geolocation
        } else {
            browserSupportFlag = false;
            handleNoGeolocation(browserSupportFlag);
        }

        function handleNoGeolocation(errorFlag) {
            if (errorFlag === true) {
                alert("Geolocation service failed.");
                initialLocation = newyork;
            } else {
                alert("Your browser doesn't support geolocation. We've placed you in beautiful Minneapolis.");
                initialLocation = siberia;
            }
                map.setCenter(initialLocation);

}
在(这两个位置)获得初始位置之前,您将获得纬度和经度(如:position.coords.latitude,position.coords.longitude或position.latitude,position.longitude)。
只需调用一个函数,在该点设置一个隐藏字段(传入lat和long)。比如:

var setHiddenField = function(lat, long) {
    document.forms[0].hiddenLatField.value = lat;
    document.forms[0].hiddenLongField.value = long;
}

…我假设您的页面上只有一个表单,但您应该能够轻松地调整它。

就像我在本文中使用的方法:
getCurrentPosition
方法中:

populateInputs(initialLocation);
其中函数看起来像:

function populateInputs(pos) {
    document.getElementById("t1").value=pos.lat()
    document.getElementById("t2").value=pos.lng();
}
其中t1和t2是隐藏字段