起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2025|回复: 6

[结贴] 获取地理位置

[复制链接]

7

主题

17

帖子

93

积分

初级会员

Rank: 2

积分
93
QQ
发表于 2017-5-10 11:19:28 | 显示全部楼层 |阅读模式
var me = this;
                function successCallback(position) {
                    var lat = position.coords.latitude;//获取到纬度
                    var lon = position.coords.longitude;//获取到经度
                          alert(lat);
                    alert(lon);
                    var url = 'https://api.map.baidu.com/geocoder/v2/?ak=Yk3Ytw4YIKThL92RiFZYl4LGjHPvVpt2&callback=renderReverse&location=' + lat + ',' + lon + '&output=json&pois=1';
                    $.ajax({
                        url : url,
                        dataType : 'json',
                        processData : false,
                        type : 'get',
                        success : function(data) {
                        alert(data);
//                            alert(data.result.formatted_address);
//                            // 将获取到的定位信息,设置到output上显示
//                            var addtext = data.result.formatted_address;
//                           // me.comp("geolocationInput").val(addtext);
                            me.comp("geolocationInput").val(position.coords.latitude+","+position.coords.longitude);
                        },
                        error : function(XMLHttpRequest, textStatus, errorThrown) {
                            alert(textStatus + "---");
                        }
                    });
                }
                function errorCallback(position) {
                    alert("失败");
                }

navigator.geolocation.getCurrentPosition(successCallback, errorCallback);
               
        };



坐标获取到了,但是发送请求只执行error,是什么原因
发表于 2017-5-10 11:36:45 | 显示全部楼层
报错信息是什么呢
http://docs.wex5.com/wex5-app-question-list-2062/

url 字符串拼接完整后,直接在浏览器请求是正常的吗?

dataType : 'jsonp',
注意跨域问题
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

7

主题

17

帖子

93

积分

初级会员

Rank: 2

积分
93
QQ
 楼主| 发表于 2017-5-10 11:54:37 | 显示全部楼层
liangyongfei 发表于 2017-5-10 11:36
报错信息是什么呢
http://docs.wex5.com/wex5-app-question-list-2062/

var me = this;
                function successCallback(position) {
                    var lat = position.coords.latitude;//获取到纬度
                    var lon = position.coords.longitude;//获取到经度
                          alert(lat);
                    alert(lon);
                    var url = 'https://api.map.baidu.com/geocoder/v2/?ak=Yk3Ytw4YIKThL92RiFZYl4LGjHPvVpt2&callback=renderReverse&location=' + lat + ',' + lon + '&output=json&pois=1';
                    
                    $.ajax({
                        url : url,
                        dataType : 'jsonp',
                        processData : false,
                        type : 'get',
                        success : function(data) {
                        alert(data);
                        
                            alert(data.result.formatted_address);
                            // 将获取到的定位信息,设置到output上显示
                            var addtext = data.result.formatted_address;
                           // me.comp("geolocationInput").val(addtext);
                            me.comp("geolocationInput").val(addtext);
                        },
                        error : function(XMLHttpRequest, textStatus, errorThrown) {
                            alert(textStatus + "---");
                        }
                    });
                }
                function errorCallback(position) {
                    alert("失败");
                }

                navigator.geolocation.getCurrentPosition(successCallback, errorCallback);


获取到了地址,但是获取到的地址是返回的数据里面的地址, 不是我的地址,是我少了什么参数吗,怎么定位到 其他地方了
回复 支持 反对

使用道具 举报

发表于 2017-5-10 11:59:09 | 显示全部楼层
孙苗健 发表于 2017-5-10 11:54
var me = this;
                function successCallback(position) {
                    var lat = position.coords.latitude;// ...

那就是坐标有问题吧!
坐标转换一下试试看,不是百度需要的坐标吧,如果坐标正确,就应该能访问正确的地址才对
/UI2/demo/plugin/geolocation/demo.w

qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

7

主题

17

帖子

93

积分

初级会员

Rank: 2

积分
93
QQ
 楼主| 发表于 2017-5-10 11:59:42 | 显示全部楼层
孙苗健 发表于 2017-5-10 11:54
var me = this;
                function successCallback(position) {
                    var lat = position.coords.latitude;// ...

可以了,获取到了,谢谢!
回复 支持 反对

使用道具 举报

发表于 2017-5-10 12:04:30 | 显示全部楼层
孙苗健 发表于 2017-5-10 11:59
可以了,获取到了,谢谢!

如何解决的,欢迎分享下经验,谢谢
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

7

主题

17

帖子

93

积分

初级会员

Rank: 2

积分
93
QQ
 楼主| 发表于 2017-5-10 14:29:17 | 显示全部楼层
liangyongfei 发表于 2017-5-10 12:04
如何解决的,欢迎分享下经验,谢谢

只是把 json 改成jsonp ,就可以了,之前是我的url 地址拼写出现错误
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-9-28 06:35 , Processed in 0.063391 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表