<html>
<head>
<title>根据地址查询经纬度</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script src="http://cdn.bootcss.com/jquery/1.11.1/jquery.js"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script>
</head>
<body>
<div style="width:1200px;margin:auto;">
<textarea id="text_" type="text" style="width:100%;height:300px">四川省成都市双流区福通路93号,四川省成都市青羊区草堂北路19号附1号(草堂北路地铁站B口步行200米)</textarea>
<input type="button" value="查询" onclick="searchByStationName();" />
<div id="num"></div>
<button id="export-btn">导出</button>
<div id="c"></div>
<table id="result_"></table>
<div id="container"></div>
</div>
</body>
<script type="text/javascript">
var map = new BMap.Map("container");
var localSearch = new BMap.LocalSearch(map);
var i = 0
var html = ''
function searchByStationName() {
$("#result_").html('<tr><td>查找名称</td><td>结果名称</td><td>地址</td><td>经度</td></tr>')
var keyword = $("#text_").val();
var list = keyword.split(',')
$('#num').html(i)
try {
map.clearOverlays(); //清空原来的标注
localSearch.search(list[i]);
localSearch.setSearchCompleteCallback(function(searchResult) {
var poi = searchResult.getPoi(0);
if (poi) {
html += '<tr><td>' + searchResult.keyword
html += '</td><td>' + i
html += '</td><td>' + poi.title
html += '</td><td>' + poi.address
html += '</td><td>' + poi.point.lat + ',' + poi.point.lng
html += '</td></tr>'
} else {
html += '<tr><td>' + searchResult.keyword
html += '</td><td>' + i
html += '</td><td>——'
html += '</td><td>——'
html += '</td><td>——'
html += '</td></tr>'
}
$("#result_").append(html)
if (i >= list.length - 1) return
i++
searchByStationName()
});
} catch (e) {
console.log(html)
$("#result_").append(html)
//TODO handle the exception
}
}
$('#export-btn').click(function() {
// 将表格数据转换为CSV格式
var csv = $('#result_').tableToCSV();
// 创建一个Blob URL
var blob = new Blob([csv], {
type: 'text/csv;charset=utf-8;'
});
var csvUrl = URL.createObjectURL(blob);
// 创建一个隐藏的<a>标签并设置属性
var downloadLink = $('<a>').attr('href', csvUrl).attr('download', 'export.csv').hide();
// 将downloadLink添加到文档中并触发点击
$(document.body).append(downloadLink);
downloadLink[0].click();
// 清理临时创建的元素和Blob URL
downloadLink.remove();
URL.revokeObjectURL(csvUrl);
});
// 自定义tableToCSV函数,将表格转换为CSV格式
$.fn.tableToCSV = function() {
var csv = [];
var rows = this.find('tr');
// 添加表头
var headers = [];
rows.each(function() {
headers.push($(this).find('th').map(function() {
return $(this).text().replace(/"/g, '""');
}).get().join('","'));
});
csv.push(headers.join('","'));
// 添加表格内容
rows.each(function() {
var row = $(this).find('td').map(function() {
return $(this).text().replace(/"/g, '""');
}).get().join('","');
csv.push('"' + row + '"');
});
return csv.join('\n');
};
</script>
</html>
批量获取地址经纬度并导出
最新推荐文章于 2025-03-30 10:00:00 发布