本帖最后由 walunwine1234 于 2014-08-18 20:43:25 编辑

解决方案 »

  1.   

    <title>批量获取模糊搜索地址名称及坐标</title>
    <meta name="Keywords" content="批量,获取坐标,模糊搜索">
    <meta name="Description" content="本网页提供了批量搜索地名并返回地址及坐标的功能!">
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
    </head>
    <body>
    <P>搜索城市<input id="txtCity" type="text" value="安庆" /></n>
    <p>地名关键词<input id="txtSearch" type="text" value="二环路" />
    <input type="button" value="生成坐标序列" onclick="search()" /> </n>
    <p>显示结果<textarea id="txtResult" rows="10" cols="30" value="" /></textarea>
    <div id="divMap" style="width:1000px;height:400px;border:solid 1px gray"></div>
    <script type="text/javascript">
    function $(id){
    return document.getElementById(id);//定义$,以便调用
    }
    var map = new BMap.Map("divMap");//创建地图
    map.centerAndZoom("北京",13);
    var city=new BMap.LocalSearch(map,{renderOptions:{map:map,autoViewport:false}});

    function search(){
    $("txtResult").value=""//每次生成前清空文本域
    map.clearOverlays(); //清除地图上所有标记
    var c=$("txtCity").value;
    city.search(c);//查找城市
    var s=$("txtSearch").value;
    var ls = new BMap.LocalSearch(c);
    ls.search(s);
    var i=1;
    ls.setSearchCompleteCallback(function(rs){
    if (ls.getStatus() == BMAP_STATUS_SUCCESS){
    for(j=0;j<rs.getCurrentNumPois();j++)
    {
    var poi=rs.getPoi(j);
    map.addOverlay(new BMap.Marker(poi.point)); //如果查询到,则添加红色er
    $("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>不知道是不是楼主要想的,将自动视野改成false: autoViewport:false  添加地图中心点及显示级别 map.centerAndZoom("北京",13);
      

  2.   

    刚按照楼上朋友的代码测试了一下,没有出来想要的效果,希望你能帮忙再看一下,先谢了如果你按照“安庆” “便利店”搜索出来的标记点,仍然没有显示出搜索结果的详细信息
    <title>批量获取模糊搜索地址名称及坐标</title>
    <meta name="Keywords" content="批量,获取坐标,模糊搜索">
    <meta name="Description" content="本网页提供了批量搜索地名并返回地址及坐标的功能!">
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
    </head>
    <body>
    <P>搜索城市<input id="txtCity" type="text" value="北京" /></n>
    <p>地名关键词<input id="txtSearch" type="text" value="便利店" />
    <input type="button" value="生成坐标序列" onclick="search()" /> </n>
    <p>显示结果<textarea id="txtResult" rows="10" cols="30" value="" /></textarea>
    <div id="divMap" style="width:1000px;height:400px;border:solid 1px gray"></div>
    <script type="text/javascript">
    function $(id){
    return document.getElementById(id);//定义$,以便调用
    }
    var map = new BMap.Map("divMap");//创建地图
    map.centerAndZoom("北京",13);
    var city=new BMap.LocalSearch(map,{renderOptions:{map:map,autoViewport:false}});

    function search(){
    $("txtResult").value=""//每次生成前清空文本域
    map.clearOverlays(); //清除地图上所有标记
    var c=$("txtCity").value;
    city.search(c);//查找城市
    var s=$("txtSearch").value;
    var ls = new BMap.LocalSearch(c);
    ls.search(s);
    var i=1;
    ls.setSearchCompleteCallback(function(rs){
    if (ls.getStatus() == BMAP_STATUS_SUCCESS){
    for(j=0;j<rs.getCurrentNumPois();j++)
    {
    var poi=rs.getPoi(j);
    map.addOverlay(new BMap.Marker(poi.point)); //如果查询到,则添加红色er
    $("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>http://developer.baidu.com/map/jsdemo.htm#i1_1这是百度LBS.云的操作界面,谢谢了先
      

  3.   

    这二天比较忙,才上
    <title>批量获取模糊搜索地址名称及坐标</title>
    <meta name="Keywords" content="批量,获取坐标,模糊搜索">
    <meta name="Description" content="本网页提供了批量搜索地名并返回地址及坐标的功能!">
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
    </head>
    <body>
    <P>搜索城市<input id="txtCity" type="text" value="北京" /></n>
    <p>地名关键词<input id="txtSearch" type="text" value="西城区 银行" />
    <input type="button" value="生成坐标序列" onClick="search()" /> </n>
    <p>显示结果<textarea id="txtResult" rows="10" cols="30" value="" /></textarea>
    <div id="divMap" style="width:400px;height:400px;border:solid 1px gray"></div>
    <script type="text/javascript">
    function $(id){return document.getElementById(id);}
    var map = new BMap.Map("divMap");
    function search(){
    $("txtResult").value="";
    map.clearOverlays();
    var c=$("txtCity").value;
    var s=$("txtSearch").value;

    var local=new BMap.LocalSearch(c,{renderOptions:{map:map,autoViewport:true}});
    local.search(s);
    var i=1;

    local.setSearchCompleteCallback(function(rs){
    if (local.getStatus() == BMAP_STATUS_SUCCESS){
    for(j=0;j<rs.getCurrentNumPois();j++)
    {
    var poi=rs.getPoi(j);
    $("txtResult").value+= poi.title+":" +poi.point.lng+","+poi.point.lat+'\n';
    }
    if(rs.getPageIndex!=rs.getNumPages())  
              {  
                local.gotoPage(i);
                i=i+1;
              }
    }});}
    </script>
    </body>
    </html>由于遍例标注,所以会逐个显示,解决这个办法只有通过其它方法了