JavaScript   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了javascript – 如何为Google商店API自动完成文本框设置默认值大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个足够接近谷歌样本 https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete-addressform中的页面的页面,它工作正常.

但是我还需要添加一个功能,即默认将自动完成的值设置为当前用户城市.

我正在使用以下代码来使用HTML5中的地理位置API获取登录用户的城市和国家/地区.然而,挑战在于使自动完成接受此值作为其默认值.当我尝试将值直接放在文本框中时,自动完成将其视为错误的值.

navigator.geoLOCATIOn.getCurrentPosition(function(pos) {
   var currentLOCATIOn = new google.maps.LatLng(pos.coords.latitude,pos.coords.longitudE);
   var geocoder = new google.maps.Geocoder();
   var city = "";
   var country = "";
   geocoder.geocode({'latLng': currentLOCATIOn},function(results,status,from) {
      if (status == google.maps.GeocoderStatus.OK) {
         if (results[1]) {
            for (var i = 0; i < results[0].address_components.length; i++) {
               for (var b = 0; b < results[0].address_components[i].types.length; b++) {
                  if (results[0].address_components[i].types[b] == "administrative_area_level_1") {
                     city = results[0].address_components[i];
                     break;
                  }
                  if (results[0].address_components[i].types[b] == "country") {
                     country = results[0].address_components[i];
                     break;
                  }
               }
            }
            var fromDefault = city.long_name + " - " + country.long_name;
            $('#address-from').val(fromDefault);
         }
      }
   });
},function(error) {                    
   alert('Unable to get LOCATIOn: ' + error.messagE);
},options);

知道如何手动填写自动完成文本框的默认值吗?

解决方法

我在尝试解决类似的用例时填写了这篇文章(用自己搜索的最后一个位置填充自动填充).

据我所知,无法为自动填充设置默认值,它可以识别为地点.但是,我认为您可以使用Autocomplete Service模拟此效果(example – 另请参阅#AutocompletePreDiction和#Placesservice上的参部分):

>将您的自动填充功能设置为已识别的城市和国家/地区
>将城市和国家/地区传递给自动填充服务
>确定首选预测的地点ID(例如,选择type =’city’的第一个预测)
>使用Places服务获取所选地点ID的详细信息(PlaceResult)(与使用autocomplete.getPlace()相同的结果)
>使用PlaceResult进行回调,以满足您的需求

这会让您的用户感觉自动填充功能正在使用中.如果结果是他们需要的,那太好了!如果他们想要搜索其他地方,请设置自动完成功能以侦听place_changed并运行autocomplete.getPlace(),然后执行相同的回调.

大佬总结

以上是大佬教程为你收集整理的javascript – 如何为Google商店API自动完成文本框设置默认值全部内容,希望文章能够帮你解决javascript – 如何为Google商店API自动完成文本框设置默认值所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。