js 高德地图 搜索
时间: 2023-08-20 13:02:50 浏览: 118
js 高德地图搜索功能可以通过调用高德地图的API来实现。首先,在网页中引入高德地图的API库文件,可以使用script标签进行引入。
然后,在JS代码中,可以使用AMap对象来调用搜索功能。通过使用AMap对象的搜索方法,可以指定搜索关键字、搜索城市、以及搜索完成后的回调函数。回调函数可以处理搜索结果,并将结果显示在网页中。
具体的步骤如下:
1. 在网页中引入高德地图的API库文件。可以使用以下代码将高德地图的API库文件引入到网页中:
```
<script src="https://webapi.amap.com/maps?v=1.4.15&key=your_api_key"></script>
```
其中,your_api_key需要替换为自己申请的高德地图API的密钥。
2. 在JS代码中,创建一个地图对象,并在地图加载完成后执行搜索功能。可以使用以下代码创建地图对象:
```
var map = new AMap.Map('mapContainer', {
zoom: 13, // 初始化地图的缩放级别
center: [116.397428, 39.90923] // 初始化地图的中心点坐标
});
```
其中,'mapContainer'是一个div元素的id,用于显示地图。
3. 在搜索输入框中,监听用户的搜索操作,当用户进行搜索时,使用AMap对象的search方法进行搜索,并指定搜索的关键字和搜索城市。可以使用以下代码进行搜索:
```
var searchInput = document.getElementById('searchInput'); // 获取搜索输入框的DOM对象
var searchButton = document.getElementById('searchButton'); // 获取搜索按钮的DOM对象
searchButton.addEventListener('click', function() {
var keyword = searchInput.value; // 获取用户输入的搜索关键字
var city = '成都'; // 设置搜索城市为成都
// 使用AMap的search方法进行搜索
AMap.plugin('AMap.PlaceSearch', function() {
var placeSearch = new AMap.PlaceSearch({
city: city
});
placeSearch.search(keyword, function(status, result) {
// 处理搜索结果
if (status === 'complete' && result.info === 'OK') {
// 显示搜索结果
} else {
// 搜索失败,提示用户
}
});
});
});
```
其中,searchInput是搜索输入框的DOM对象,searchButton是搜索按钮的DOM对象。当用户点击搜索按钮时,会触发click事件,执行搜索操作。
通过以上步骤,就可以使用js高德地图搜索功能。当用户输入搜索关键字并点击搜索按钮时,会在地图上显示搜索结果。
阅读全文