我试图获得一个函数来调用html,我似乎无法弄明白。我使用angularJS,我尝试过使用onClick = "function();"
和ng-click = "function();"
这是我的代码:
HTML:
<button ng-hide="tableAttrs.hide" onclick="moveToLoc()">Search</button>
JS:
function moveToLoc() {
siteId = document.getElementById('input').value;
alert(siteId);
map.panTo(siteId);
tableAttrs.hide = !tableAttrs.hide;
}
在控制台中我收到错误:Uncaught ReferenceError: moveToLoc is not defined
我做错了什么???
答案 0 :(得分:0)
尝试按照angularJS文档:
https://docs.angularjs.org/api/ng/directive/ngClick
您可以将ngClick属性添加到按钮对象,如下例所示:
<button ng-click="count = count + 1" ng-init="count=0">
Increment
</button>
最诚挚的问候,
答案 1 :(得分:0)
如果您的moveToLoc()
在控制器中,则需要将其绑定到$scope
- 否则您的观点无法了解它。
所以在您的控制器中使用:
$scope.moveToLoc = function() {
//code
}
并在您的视图中使用:
<button ng-hide="tableAttrs.hide" ng-click="moveToLoc()">Search</button>
除此之外,如果moveToLoc()
在控制器中,那么你也在混合DOM和业务逻辑。像siteId = document.getElementById('input').value
之类的东西不应该在你的控制器中。