如果选中复选框,则获取当前位置
Posted
技术标签:
【中文标题】如果选中复选框,则获取当前位置【英文标题】:Get Current Location If Checkbox Checked 【发布时间】:2015-06-08 01:44:25 【问题描述】:大家好,我有一个地理定位脚本来获取访客城市和州。如果用户选择使用此自动功能,我将尝试运行此脚本。如果脚本设置为文档就绪,那么它可以工作,但每次我添加点击功能时它都不起作用。我做错了什么?
js
<script type="text/javascript"
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCeLzjWfDaqBze8j7qKJL17XH4ZsMjsTx0&sensor=true">
</script>
<script>
$("#useLocation").click(function()
//I'm not doing anything else, so just leave
if(!navigator.geolocation) return;
navigator.geolocation.getCurrentPosition(function(pos)
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(pos.coords.latitude,pos.coords.longitude);
geocoder.geocode('latLng': latlng, function(results, status)
if (status == google.maps.GeocoderStatus.OK)
//Check result 0
var result = results[0];
//look for locality tag and administrative_area_level_1
var city = "";
var state = "";
for(var i=0, len=result.address_components.length; i<len; i++)
var ac = result.address_components[i];
if(ac.types.indexOf("locality") >= 0) city = ac.long_name;
if(ac.types.indexOf("administrative_area_level_1") >= 0) state = ac.long_name;
//only report if we got Good Stuff
if(city != '' && state != '')
$("#locationText").val(city+", "+state);
);
);
);
</script>
html
<li><label for="cLocation">Use Current Location?</label> <input type="checkbox" id="useLocation" name="cLocation"> Yes</li>
<li><label for="dLocation">Where Will You Be:</label> <input type="text" name="dLocation" class="shortInput" id="locationText"></li>
我的 JS 控制台中没有任何关于这不起作用的信息,所以我不确定为什么它不起作用。它什么也不做。
谁能帮忙?
【问题讨论】:
【参考方案1】:javascript 是否出现在标记中的复选框之后?您可能试图在元素存在之前附加处理程序。
【讨论】:
确实如此。让我改变一下,看看会发生什么。 移动它工作。我不会猜到这么简单,只是因为页面已经完全加载了哈哈。以上是关于如果选中复选框,则获取当前位置的主要内容,如果未能解决你的问题,请参考以下文章