完整代码如下,使用的是百度地图JS版API1.2版本:
[html]view plaincopy
<title>批量获取模糊搜索地址名称及坐标</title>
<metaname="Keywords"content="批量,获取坐标,模糊搜索">
<metaname="Description"content="本网页提供了批量搜索地名并返回地址及坐标的功能!">
<scripttype="text/javascript"src="http://api.map.baidu.com/api?v=1.2"></script>
</head>
<body>
<P>搜索城市<inputid="txtCity"type="text"value="北京市"/></n>

<p>地名关键词<inputid="txtSearch"type="text"value="肯德基"/>
<inputtype="button"value="生成坐标序列"onclick="search()"/></n>
<p>显示结果<textareaid="txtResult"rows="10"cols="30"value=""/></textarea>
<divid="divMap"></div>
<scripttype="text/javascript">
function$(id){
returndocument.getElementById(id);//定义$,以便调用
}
varmap=newBMap.Map("divMap");//创建地图
varcity=newBMap.LocalSearch(map,{renderOptions:{map:map,autoViewport:true}});
functionsearch(){
$("txtResult").value=""//每次生成前清空文本域
map.clearOverlays();//清除地图上所有标记
varc=$("txtCity").value;
city.search(c);//查找城市
vars=$("txtSearch").value;
varls=newBMap.LocalSearch(c);
ls.search(s);
vari=1;
ls.setSearchCompleteCallback(function(rs){
if(ls.getStatus()==BMAP_STATUS_SUCCESS){
for(j=0;j<rs.getCurrentNumPois();j++)
{
varpoi=rs.getPoi(j);
map.addOverlay(newBMap.Marker(poi.point));//如果查询到,则添加红色marker
$("txtResult").value+=poi.title+":"+poi.point.lng+","+poi.point.lat+'n';
}
if(rs.getPageIndex!=rs.getNumPages())
{
ls.gotoPage(i);
i=i+1;
}
}});}
</script>
</body>
</html>