Javascript 谷歌地图API:在提交之前,如何确保谷歌地图自动完成文本是实际地址?
我有一个使用autocomplete的Google地图搜索框(当用户在字段中输入文本时,会出现地址建议的下拉列表) 我想确保当用户提交表单时,字段中的文本是实际的自动完成建议Javascript 谷歌地图API:在提交之前,如何确保谷歌地图自动完成文本是实际地址?,javascript,jquery,validation,google-maps,autocomplete,Javascript,Jquery,Validation,Google Maps,Autocomplete,我有一个使用autocomplete的Google地图搜索框(当用户在字段中输入文本时,会出现地址建议的下拉列表) 我想确保当用户提交表单时,字段中的文本是实际的自动完成建议 我的目标是确保输入的文本是实际地址,而不是随机字符串。下面的链接描述了一个可以访问自动完成建议的示例:下面的链接描述了一个可以访问自动完成建议的示例:我有一个类似的问题(给定字段中的任何内容都应该是有效的Google Maps地址),并根据该地址构建了一个解决方案,这可能会对您有所帮助。其想法是: 当用户点击谷歌地图以外
我的目标是确保输入的文本是实际地址,而不是随机字符串。下面的链接描述了一个可以访问自动完成建议的示例:下面的链接描述了一个可以访问自动完成建议的示例:我有一个类似的问题(给定字段中的任何内容都应该是有效的Google Maps地址),并根据该地址构建了一个解决方案,这可能会对您有所帮助。其想法是:
- 当用户点击谷歌地图以外的建议时
- 触发事件,将注意力转移到第一个建议上
- 触发事件以选择它
- 当用户点击谷歌地图以外的建议时
- 触发事件,将注意力转移到第一个建议上
- 触发事件以选择它
对我来说,这很管用,我希望能有所帮助!听起来你想在提交给谷歌地图“地址位置”之前验证地址。是吗?你想在要求谷歌地图为你定位地址之前知道地址是否正确?是的,基本上就是这样。但我不确定是否有“通用”地址谷歌地图使用的地址格式如果你指的是全球通用的地址格式,那么就没有了。一些国家使用类似的地址寻址方法,但没有标准。此外,谷歌地图没有维护有效地址列表,因此其自动完成功能不会只包含真实地址。这超出了范围谷歌地图。如果你先验证地址,然后将其提交给谷歌地图,以显示地址位置,你会得到更好的结果。这有帮助吗?我不一定要寻找通用地址格式。因为我的网站主要依赖谷歌地图,我至少要确保输入的地址是谷歌建议的地址emaps。为了最大限度地减少后续页面上的错误,该页面会在地图上显示地址。因此,您建议验证地址(如何?),然后将其提交给谷歌地图?感谢您的帮助。好的,谷歌搜索“地址验证”将向您显示大量结果。其中许多结果我自己也尝试过。听起来您希望在向谷歌地图提交“地址位置”之前进行地址验证。是吗?在要求谷歌地图为您定位地址之前,您想知道地址是否正确?是的,基本上就是这样。但我不确定是否存在“通用”谷歌地图使用的地址格式如果你指的是全球通用的地址格式,那么就没有了。一些国家使用类似的地址寻址方法,但没有标准。此外,谷歌地图没有维护有效地址列表,因此其自动完成功能不会只包含真实地址。这超出了范围谷歌地图。如果你先验证地址,然后将其提交给谷歌地图,以显示地址位置,你会得到更好的结果。这有帮助吗?我不一定要寻找通用地址格式。因为我的网站主要依赖谷歌地图,我至少要确保输入的地址是谷歌建议的地址emaps。为了最大限度地减少后续页面上的错误,该页面会在地图上显示地址。因此,您建议验证地址(如何验证),然后将其提交给谷歌地图?感谢您的帮助。好的,谷歌搜索“地址验证”将向您显示大量结果。其中许多结果我自己都尝试过。
//// Ensuring that only Google Maps adresses are inputted
function selectFirstAddress (input) {
google.maps.event.trigger(input, 'keydown', {keyCode:40});
google.maps.event.trigger(input, 'keydown', {keyCode:13});
}
// Select first address on focusout
$('#content').on('focusout', 'input#xxx__zzz', function() {
selectFirstAddress(this);
});
// Select first address on enter in input
$('#content').on('keydown', 'input#xxx__zzz', function(e) {
if (e.keyCode == 13) {
selectFirstAddress(this);
}
});