- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经在搜索上实现了 Google map API。我的代码在自动生成位置之前一直正常工作,但我想要这样的工具,通过它我可以通过仅提供城市名称而不是整个格式字符串来获取准确的位置。
例如:
请检查此图片 http://demo.ncryptedprojects.com/nct_bnb_clone_new/Untitled.png
我在搜索框中输入城市名称孟买,Google map API 会检索下拉列表中的所有值。当有人没有从下拉列表中选择任何值并直接在城市名称后按 Enter 时,我无法在 map 中精确搜索城市孟买。我真正想做的是,当有人输入城市名称然后搜索时,它应该自动从下拉列表中搜索第一个出现的位置,例如“印度孟买马哈拉施特拉邦”
HTML 表单
<input name="location" id="location" type="text"/>
Google map API
<script src="https://maps.googleapis.com/maps/api/js?sensor=false&libraries=places"></script>
$(function() {
var e;
e = $('.search-form input[name="location"]')[0];
return new google.maps.places.Autocomplete(e, {
types: ["geocode"]
})
});
最佳答案
这很棘手,因为默认情况下,Google 地点会查找 map 中心附近的位置,无论下拉列表中的建议如何。
因此,您必须从下拉列表中找到第一个建议,document.querySelector('.pac-item')
- 提取位置并使用地理编码器查找该位置的经纬度。
提取位置的代码:
function extractLocation(item) {
var text = item.innerText || item.textContent;
var upper = text.toUpperCase();
var result='';
for (var i=0;i<text.length;i++) {
if (text[i]==upper[i]) {
result+=' ';
}
result+=text[i];
}
return result;
}
在搜索框中输入,选择第一个建议,提取位置,通过地理编码器查找纬度并放置标记:
input.onkeyup = function(e) {
var code = (e.keyCode ? e.keyCode : e.which);
var places = searchBox.getPlaces();
if (code == 13 && places!=[]) {
var firstSuggestion = document.querySelector('.pac-item');
var query = extractLocation(firstSuggestion);
geocoder.geocode({"address":query }, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
clearMarkers();
var latLng = new google.maps.LatLng(results[0].geometry.location.lat(), results[0].geometry.location.lng());
var marker = new google.maps.Marker({
map: map,
title: results[0].address_components[0].long_name,
position: latLng,
});
markers.push(marker);
map.setCenter(latLng);
map.setZoom(10);
}
});
}
}
工作 fiddle -> http://jsfiddle.net/cdnT8/
关于javascript - 从 php 中按谷歌地图 api 中的城市名称自动填充州和国家/地区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19428227/
我的所有照片上都有 GPS 坐标。我想包括城市、州、 zip 等的标签/IPTC 数据。但是我只有 GPS 坐标。我怎样才能以自动化的方式获取这些并获得有意义的信息(我有成千上万张照片,所以将每一张都
在我的网络应用程序中,我有以下要求。 我需要一个国家/地区的下拉列表。 根据选择的国家/地区,我需要显示相应的州。 我需要从数据库中获取国家/地区和州。 我无法使用 JavaScript,因为在生产(
var geocoder = new google.maps.Geocoder(); geocoder.geocode({'latLng': foundLoc}, functi
我正在构建一个代表美国州或加拿大省的类。这个类应该叫什么? 一些想法: 地区:问题在于 .Net 有一个 RegionInfo 类,它使用术语 Region 来表示一个国家(而不是州或省)。 状态:这
我正在尝试使用这个 jQuery 示例来拉回城市和州名称组合。我想知道有什么办法可以拉回实际的州名而不是缩写吗?例如:它当前返回爱达荷州博伊西,我想要爱达荷州博伊西... http://jqueryu
如何使用 API 获取国家/地区、州/地区 我是 ajax 新手,所以任何人都可以帮助我,提前致谢 Ajax $(document).ready(function(){ let api_ur
我是 SQL 和关系数据库新手,我遇到了一个常见问题。 我正在制作一个网站,当每个用户提交帖子时,他们必须提供邮政编码或城市/州的位置。 处理此问题的最佳做法是什么?我是否只需创建一个邮政编码、城市和
所以我有一个使用这个 importJSON script 的 google 表格将城市和州列表添加到 google 表格中。随着用户在我们网站上添加城市(反射(reflect)在我们的 JSON 文件
我有像国家/州和城市这样的下拉列表。有什么办法可以等到人口下降后再继续进行吗?就像首先加载国家/地区,然后根据选择的国家/地区然后加载州/省,与城市相同...... function populate
我正在开发一个可以帮助我提高 OO 设计技能的应用程序。我几乎完成了作业,但我觉得我需要让我的应用程序更具可扩展性,并且需要一些关于如何实现这一目标的意见。 问题域可以概括如下: 问题域是设计购物车应
如何使用单一选择器 Objective-C 来管理国家/州/城市的值(value)? 当我尝试它时,它会因索引更改而崩溃。它适用于城市城市和州,但与城市有关。哪个库会更好用? 查看下面的代码 - (v
我正在尝试从数据库“零售商”中提取并按国家/地区显示它们,美国是第一个。然后在其中按州字母顺序排序,然后按每个州内的名称排序。 它应该像这样打印...... 美国 Alabama Acme
我有 1 个静态(国家/地区)和 2 个动态(州和城市)下拉选择。 我正在与 Select2 合作。 例如,荷兰每个州都有大量城市。加载这个很难使用。 在我的用户端页面上如果有以下 JS: $(".s
我让我的用户输入他们的城市、州和国家。但我的困境是如何动态管理它,以便我可以控制输入的内容,同时具有正确的拼写和格式。 例如,我目前每个州都有一个静态下拉菜单。 Alabama
我正在寻找一种有效的方式来表示和检索地理关系,例如。地区->州->美国。这应该适应任何级别的层次结构,例如。 district->region->states->big region(East/wes
我正在开发一个应用程序,其中实体位于地球上的位置。我想要一组数据,从中我可以确定一个点包含在哪个或哪些区域。 区域可以是以下类型: 大陆 国家 湖 大海 非军事区 沙漠 冰架 ...等等。 我设想将每
我正在为一个小众服务创建一个国家目录。我认为应该将结构分解为两种格式之一,但我愿意接受建议。 site.com/category/subcategory/state/city 或 site.com/s
我计划通过将 Locations 表中的 locationID 提供给 User 表中的每个用户来规范化,而不是为共享同一位置的多个用户输入重复的用户位置,这样我就不必重复输入 Country、Sta
这个问题在这里已经有了答案: 关闭 10 年前。 Possible Duplicate: Database of Countries and their Cities 好的,这是一个非技术问题。我正
GMSReverseGeocodeResponse 包含 - (GMSReverseGeocodeResult *)firstResult; 其定义如下: @interface GMSReverseG
我是一名优秀的程序员,十分优秀!