谷歌地理编码 - 通过“ENTER”键提交地址时功能不起作用
Posted
技术标签:
【中文标题】谷歌地理编码 - 通过“ENTER”键提交地址时功能不起作用【英文标题】:Google Geocoding - function does not work when submit address by key "ENTER" 【发布时间】:2013-02-27 18:58:27 【问题描述】:我面临的一个问题是: 当我输入地址并在键盘上单击“Enter”时,页面将被重新加载。进度将在“google.maps.Geocoder().geocode()”之前自动停止。 看起来“Enter”键导致回发并在地理编码器回调函数完成之前重置地图。
“store-search-street”是我的textFiled,如果我在下面写了相关方法:
$('#store-search-street').keyup(function(e)
storeLocator.updateMap();
storeLocator.fire('sl:store-locator-search')
return false;
);
然后当我将地址复制到文本字段时,它可以执行 geocode() 并且一切都很好。但是里面没有“Enter”键。
当我将代码更改为下面的“单击ENTER提交地址”时
$('#store-search-street').keyup(function(e)
if (e.keyCode == 13)
storeLocator.updateMap();
storeLocator.fire('sl:store-locator-search')
return false;
);
geocode() 不起作用。 谁能帮我解决这个问题?谢谢!
【问题讨论】:
试试e.preventDefault()
【参考方案1】:
我猜你正在使用表单来获取详细信息。
通常情况下,表单会将信息发布到网站,而不仅仅是启动脚本而不去任何地方。
您需要捕获该表单提交(回车键)并抑制它,以便您的脚本运行。
<form id="postcodeEntry" method="post" action="/" onsubmit="some_javascript_function";return false;">
抛出一个“onsubmit”来捕获表单提交。
【讨论】:
以上是关于谷歌地理编码 - 通过“ENTER”键提交地址时功能不起作用的主要内容,如果未能解决你的问题,请参考以下文章