使用地图API,获取经纬度并传到服务器

地图API经纬度获取与传输
本文介绍如何利用地图API获取用户点击位置的经纬度,并通过隐藏域将这些信息提交到服务器的方法。具体步骤包括使用JavaScript监听地图点击事件、显示经纬度及提交表单。
使用地图API,获取经纬度并传到服务器
一张高德地图搞定用户的位置定位
    网上看了很多使用地图API实现位置自动定位的文章, JS代码不一,但效果都一样:获取一张用户自己位置的地图显示在相应的Div上面。而现在,假如说我们想点击已定位的地图上的一个地方,则会把该位置的经纬度从客户端传到服务器,然后将该经纬度通过 Smtp协议,发送给某人的邮箱,那么该怎么做呢?

    

    第一步:通过JS把地图上所点击的位置的经纬度获取到并显示到页面。

         在我们初始化的地图上加一个click监听AMap.event.addListener(map,'click',getLnglat);当点击地图时则调用getLnglat函数:

function getLnglat(e){    
 var a = e.lnglat.getLng();
 var b = e.lnglat.getLat(); 
 document.getElementById("lnglat").innerHTML ="您当前经纬度:"+"<br>"+"<br>"+""+a+","+b;}

        而该函数负责给声明的a,b赋经纬值并在Inglat上显示点击位置的经纬度。现在,我们就从地图上把点击位置的经纬度用JS获取到了,并赋给了a,b。


    第二步: 把获取到的经纬度传到服务器。

          我们需要在html页面上加入两个隐藏域<input type="hidden" value="0" name="x"/><input type="hidden" value="0" name="y"/>,然后用JS给隐藏域重新赋值:

if(a==undefined){
document.getElementById("lnglat").innerHTML="请选择你的坐标!"+"<br>"+"<br>"+"<br>";
}else
{
document.all.x.value=a; 
document.all.y.value=b;
document.insertForm.submit(); }
}
if(a==undefined)判断是否获取到经度,document.insertForm.submit()用JS实现表单的提交。而表单的action只要是指向服务器即可把两个隐藏域的值传递到服务器。

   

    第三步:服务器获取经纬度

           double x, y;声明两个double类型的x,y,即可使用request来接收经纬度。
      以上便是通过地图获取经纬度到服务器的具体方法,方法可能还有缺陷,以后改进。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值