jee*_*evs 1 javascript jquery angularjs angular-ui-bootstrap
在我的控制器中,我有方法
在有形式的部分
<form class="form-inline" role="form" ng-submit="deadForm()">
<div class="form-group">
<button ng-click="openJukeboxesModalToGroup()" class="btn btn-info">Add Stores to Group</button>
</div>
<div class="form-group">
<input type="text" ng-model="jukeboxFilter" ng-keypress="keyPressed($event, 'search')" class="form-control" placeholder="search">
</div>
<button type="button" ng-click="searchJukeboxes()" class="btn btn-info"><span class="glyphicon glyphicon-search"></span></button>
<button type="button" ng-click="resetFilter()" class="btn btn-info"><span class="glyphicon glyphicon-repeat"></span></button>
</form>
Run Code Online (Sandbox Code Playgroud)
keyPressed 方法是
$scope.keyPressed = function($event, eventType) {
$event.stopImmediatePropagation();
if(eventType=='search') {
if($event.which==13) {
$scope.searchJukeboxes();
}
}
};
Run Code Online (Sandbox Code Playgroud)
每当有人在文本栏中键入内容并单击 Enter 时,我都会尝试开始搜索。但是我并没有以某种方式调用 openJukeboxesModalToGroup() 方法。我试图通过调用停止事件传播、更改 openJukeboxesModalToGroup() 方法的名称来阻止这种情况。但没有任何效果。对此有任何帮助。
deadForm() 方法是implement,我在chrome 控制台中没有收到任何错误。
将您的按钮更改为openJukeBoxesModalToGroup():
<button type="button" ng-click="openJukeboxesModalToGroup()" class="btn btn-info">Add Stores to Group</button>
Run Code Online (Sandbox Code Playgroud)
问题是您没有提供类型,因此它将按钮归类为提交,在这种情况下 openJukeboxesModalToGroup() 正在从您的输入submit事件中触发。
当您在表单内按 Enter 键时,它会触发提交,我建议您通过 ng-submit 指令将您的方法添加到表单本身,并使您的按钮成为提交...
<form class="form-inline" role="form" ng-submit="searchJukeboxes()">
<div class="form-group">
<button type="button" ng-click="openJukeboxesModalToGroup()" class="btn btn-info">Add Stores to Group</button>
</div>
<div class="form-group">
<input type="text" ng-model="jukeboxFilter" ng-keypress="keyPressed($event, 'search')" class="form-control" placeholder="search">
</div>
<button type="submit" ng-click="searchJukeboxes()" class="btn btn-info"><span class="glyphicon glyphicon-search"></span></button>
<button type="button" ng-click="resetFilter()" class="btn btn-info"><span class="glyphicon glyphicon-repeat"></span></button>
</form>
Run Code Online (Sandbox Code Playgroud)