获取地图坐标
来源:互联网 发布:金税盘开票软件界面 编辑:程序博客网 时间:2024/05/18 16:14
前台HTML代码:
<form id="form1" runat="server"> <div id="edit"> <table cellpadding="0" cellspacing="0" class="edittb"> <tr> <td colspan="2"> <asp:Label id="labelOrgan" runat="server" style="font-size:15px;font-weight:bold;"></asp:Label></td> </tr> <tr> <td> 经度: <asp:TextBox id="txtLongitude" runat="server" CssClass="txt" Width="150px"></asp:TextBox> <span style="color:Red">*</span> </td> <td> 纬度: <asp:TextBox id="txtLatitude" runat="server" CssClass="txt" Width="150px"></asp:TextBox> <span style="color:Red">*</span> </td> </tr> <tr> <td colspan="2"> 坐标地址: <asp:TextBox id="txtLocation" runat="server" CssClass="txt" Width="340px"></asp:TextBox> <span style="color:Red">*</span> </td> </tr> <tr> <td colspan="2"> <asp:Button ID="btnEdit" runat="server" Text="提交" CssClass="btn_search" onclick="btnEdit_Click" OnClientClick="return chkData();"/></td> </tr> </table> </div> <div id="map" style="width:100%;height:100%;overflow:hidden;margin:0;"></div> </form>
<script type="text/javascript"> var map;//地图 var marker;//标注 var p;//坐标点,地图区域大小变化时,以此为中心点 var geo;//地址解析器 window.onload = function() { setHeight(); initMap(); onresize= setHeight; } function setHeight() { var h= $(window).height()-$("#edit").height() + 'px'; $("#map").css("height",h); } function initMap(){ map = new BMap.Map("map"); map.setDefaultCursor("default"); map.setDraggingCursor("default"); geo = new BMap.Geocoder(); var r = <%=islocated %>; if(r==1)//已获取坐标,按坐标在地图上标点 { p = new BMap.Point($("#txtLongitude").val(), $("#txtLatitude").val()); marker = new BMap.Marker(p,{enableDragging: true}); map.centerAndZoom(p, 15); map.addOverlay(marker); setMarkerEvent(); } else { var addr = <%=address %>;//机构管理中已有的地址信息 var json = <%=GetRegionInfo()%>;//获取机构所在地区信息 if(json!="") { //优先按地址解析 geo.getPoint(addr, function (point) { if (point)//地址解析成功时,以地址对应的坐标为中心铺开地图 { p = point; marker = new BMap.Marker(point,{enableDragging: true}); map.centerAndZoom(point, 15); map.addOverlay(marker); setMarkerEvent(); } else //地址解析失败时,按地区解析,地区级别不同,中心点获取方式不同 { if(json.regiontype>=2)//区县级机构 geo.getPoint(json.regionname, function (point) { if (point) map.centerAndZoom(point, 16); }, json.fathername); else map.centerAndZoom(json.regionname); p = map.getCenter(); } }, json.fathername); } else //机构地区信息获取失败时,以省为中心点铺开地图 { map.centerAndZoom("福建省"); p = map.getCenter(); } } //启用滚轮放大缩小 map.enableScrollWheelZoom(); //向地图中添加缩放控件 map.addControl(new BMap.NavigationControl({ anchor: BMAP_ANCHOR_TOP_LEFT, type: BMAP_NAVIGATION_CONTROL_LARGE })); //向地图中添加比例尺控件 map.addControl(new BMap.ScaleControl({ anchor: BMAP_ANCHOR_BOTTOM_LEFT })); //地图单击事件 map.addEventListener("click", function (e) { p = new BMap.Point(e.point.lng, e.point.lat); // 根据坐标得到地址描述 geo.getLocation(p, function (result) { if (result) { var newaddr = result.address.substring(3); $("#txtLongitude").val(""); $("#txtLongitude").val(e.point.lng); ; $("#txtLatitude").val(""); $("#txtLatitude").val(e.point.lat); $("#txtLocation").val(""); $("#txtLocation").val(newaddr); map.clearOverlays(); marker = new BMap.Marker(p,{enableDragging: true}); map.addOverlay(marker); marker.openInfoWindow(new BMap.InfoWindow(newaddr)); setMarkerEvent(); } }); }); //地图区域大小变化事件 map.addEventListener('resize', function(){ map.setCenter(p);//设置中心点 }); //鼠标在地图区域中移动时事件 var label; map.addEventListener('mousemove', function(e){ map.removeOverlay(label); var p=new BMap.Point(e.point.lng, e.point.lat); label = new BMap.Label(e.point.lng + ','+ e.point.lat, {position:p,offset:new BMap.Size(10, 20)}); label.setStyle({borderColor:"black"}); map.addOverlay(label); }); //鼠标移出地图区域事件 map.addEventListener('mouseout', function(){ map.removeOverlay(label); }); } function setMarkerEvent() { //标注拖拽事件 marker.addEventListener("dragend", function (e) { p = new BMap.Point(e.point.lng, e.point.lat); // 根据坐标得到地址描述 geo.getLocation(p, function (result) { if (result) { var newaddr = result.address.substring(3); $("#txtLongitude").val(""); $("#txtLongitude").val(e.point.lng); ; $("#txtLatitude").val(""); $("#txtLatitude").val(e.point.lat); $("#txtLocation").val(""); $("#txtLocation").val(newaddr); marker.openInfoWindow(new BMap.InfoWindow(newaddr)); } }); }); }</script>
0 0
- 获取地图坐标
- 创建百度地图获取坐标
- 百度地图获取手机屏幕坐标
- 百度地图坐标获取demo
- 原生地图获取坐标转化为真实坐标,火星坐标
- 高德地图获取地址坐标
- android 获取地图中心点的经纬度坐标
- jquery百度地图收索获取坐标
- 客户端学习-获取地图坐标经纬度
- 百度地图之jsonp获取位置坐标
- 百度地图根据坐标获取地址信息
- 关于百度地图获取中心点坐标
- 高德地图-鼠标获取坐标
- 如何利用百度在线地图获取坐标
- 百度地图中心坐标点如何获取
- 百度地图拖动标注后获取坐标
- 腾讯地图获取所选区域坐标
- 微信小程序获取地址坐标,跳转地图
- c++函数传参的一些指导原则
- Linux指令--watch,at
- Android之的性能优化方法
- Android中图案锁的实现
- 整了一个缩放算法,可以实现N倍放大,N倍缩小。
- 获取地图坐标
- cocos code IDE 自编译模拟器不能正确的运行以及断点调试连接IDE超时的解决方法
- Lesson 30 The death of a ghost
- 网络编程
- dubbo demo工程
- 移动平台集成支付宝
- quake3编译运行
- 在windows下安装redmine及相关问题
- 判断解决 按下home键,重启app问题