jho*_*hon 4 google-maps angularjs
就我而言,谷歌自动完成地址搜索工作正常。但是当我单击或按 Enter 键时,表单也会提交。我尝试了该活动preventdefault,但它不起作用!
这是我的指令代码。
myApp.directive('googleplace', function() {
return {
require: 'ngModel',
link: function(scope, element, attrs, model,event) {
var options = {
types: [],
};
scope.gPlace = new google.maps.places.Autocomplete(element[0], options);
google.maps.event.addListener(scope.gPlace, 'place_changed', function() {
var location = scope.gPlace.getPlace().geometry.location;
//
scope.$apply(function() {
scope.lat = location.lat();
scope.lng = location.lng();
event.preventDefault();
//alert(scope.lat);
});
});
}
};
});
Run Code Online (Sandbox Code Playgroud)
小智 6
var input = document.getElementById('IdWhereYouAreSearchingForLocation');
google.maps.event.addDomListener(input, 'keydown', function(e) {
if (e.keyCode == 13)
{
e.preventDefault();
}
});
Run Code Online (Sandbox Code Playgroud)
我的问题解决了。问题是我只是在写 event.preventDefault()。你必须尝试知道按下的是哪个键?如果按下 Enter 键,则 event.PreventDefault。
| 归档时间: |
|
| 查看次数: |
1619 次 |
| 最近记录: |