我正在AngularJS中开发一个应用程序。通过输入条件禁用/启用按钮[AngularJS]
我想知道我可以禁用按钮,如果用户键入的输入值不是uib-typeahead
列表的项目(在这种情况下,阵列items
)?并且当它是数组的一个项目时启用它?
2.而且,如果用户试图通过已添加的添加按钮添加数组的项目,我该如何禁用相同的按钮?这些项目保存在阵列addedItems
中。
这是HTML中的输入和按钮:
<input type="text" ng-model="search1" uib-typeahead="item for item in items
| filter:$viewValue | limitTo:10"/>
<button type="submit" class="btn btn-success" ng-click="action()"
ng-disabled="(!search1)">Add</button>
这是items
阵列结构的一个示例:
var items = ["admin1", "admin2", "admin3", "admin4", "admin5"];
的action()
功能在控制器定义在JavaScript:
$scope.items = ["admin1", "admin2", "admin3", "admin4", "admin5"];
$scope.search1 = undefined;
$scope.addedItems = [];
$scope.action = function() {
$scope.addedItems.push($scope.search1);
}
谢谢*
谢谢*这解决了问题#2。你知道如何解决问题1吗? (1.我想知道如果用户输入的值不是uib-typeahead列表项(在这种情况下是Array项),我该如何禁用一个按钮?并且当它是一个项数组?) – Julia
同时,我做了类似的事情,用一个新的方法“itemList()”解决了我的问题#2。现在使用“ng-disabled =”的HTML按钮存在(addedItems,search1)|| itemList(search1,items)“” – Julia
Yeap,我认为这会解决问题! – deividfortuna