如何在没有ng-click的情况下调用angularjs中的函数。我尝试过ng-show,但我的功能一次又一次地运行。谁能帮我。 基本上我想要在没有ng-click的情况下提交功能。
<button ng-show="Temp" ng-click="TemplateE5()"> </button>
我不想要点击。它应该自动启动
<angucomplete-alt id="Te1" placeholder="Please type name of template "
pause="100" maxlength="20" input-changed="test"
selected-object="Temp" local-data="myTemplate"
search-fields="NAME" title-field="NAME" minlength="0"
input-class="form-control form-control-small"
match-class="highlight">
</angucomplete-alt>
<button ng-show="Temp" ng-click="TemplateE5()"> </button>
控制器端
$scope.TemplateE5 = function () {
$scope.users.Time = $scope.Temp.time;
$scope.users.Paper= $scope.Temp.paper;}
答案 0 :(得分:1)
如果您知道ID,则可以从控制器运行它:
$scope.getSessionsForSpeaker(id);
您可以使用ng-init在该元素加载时运行它:
<a ng-init="getSessionsForSpeaker(speaker.id)"></a>
如果要在鼠标悬停在该元素上时运行它,也可以使用ng-mouseover
<a ng-mouseover="getSessionsForSpeaker(speaker.id)"></a>
全部取决于您何时想要运行它。
答案 1 :(得分:0)
谢谢大家。我在angucomplete-alt里面使用ng-click它可以工作
<angucomplete-alt id="Te1" ng-click="TemplateE5()"
placeholder="Please type name of template "
pause="100" maxlength="20" input-changed="test"
selected-object="Temp" local-data="myTemplate"
search-fields="NAME" title-field="NAME"
minlength="0"
input-class="form-control form-control-small"
match-class="highlight">
</angucomplete-alt>
答案 2 :(得分:0)
`app.directive('ngEnter', function () {
return function (scope, element, attrs) {
element.bind("keydown keypress", function (event) {
if(event.which === 13) {
scope.$apply(function (){
scope.$eval(attrs.ngEnter);
});
event.preventDefault();
}
});
};
});`
在网页上
<input ng-enter="myFunc()" ng-model="..." />