Angularjs -删除选项从输入选择
angularjs - remove option from input select
我怎么也想不明白。使用AngularJS。
我有一个下拉选择字段与几个选项。它是表单的一部分,可以多次填写(即"添加另一个"类型的表单)。现在,其中一个选项可能只使用一次。如何在使用该选项后从所有其他选择字段中删除该选项?
我在做什么:
html
<select ng-model="item.itemtype">
<option ng-repeat="i in itemtype" value="{{i}}" ng-init="item.itemtype = itemtype[0]">{{i}}</option>
</select>
angularjs
$scope.Items = [
{ 'itemtype': '', 'desc': '', 'color': '' }
];
$scope.itemtype = [
'shirt',
'pants',
'hats',
'shoes',
'special'];
我试过的(真的不起作用)
$scope.specialremove = function() {
var exist = Items.indexOf("special")
if (exist !== 0) {
return '';
}
else {
return 'special';
}
}
我希望我不需要转向任何其他框架来解决这个问题。如果我的代码中有任何问题/错误/效率低下,请随时指出。
首先可以使用ng-options
:
ng-options="type for type in itemType"
。
最好有具有label
和value
属性的对象,以便将其写为
ng-options="type.value as type.label for type in itemType"
,并将显示的标签与所选内容的实际值分开。
在你的控制器中你应该有这样的内容:
$scope.itemType= [
...
];
$scope.selectedItem= $scope.itemType[0];
所以你可以这样写:
<select ng-Model="selectedItem" ng-options="item.value as item.label for item in itemType"></select>
要删除一个选定的项目,您可以watch
控制器中的selectedItem
的值:当它匹配您想要的值时,从数组中删除它并相应地更新selectedItem
。
这是一把基本小提琴。我只是在选中第三个选项后删除它,并将选中的项目重置为第一个。
相关文章:
- HTML使用选择表单更改输入选择(可能使用JQuery?)
- jquery:输入选择器未选择:选择元素
- 使用文件输入选择多个 FIle 时删除单个文件
- 在 AngularJS 中选择输入选择不同的子 JSON 元素
- 带有 Li 的 jquery 输入选择器
- 检查表行的所有输入/选择字段是否都有值
- jQuery 输入选择 - 将中继器内的总计相加
- jQuery 手风琴如何获得输入选择按钮的活动标题.
- 输入-选择下拉菜单在firefox中不起作用
- Angular-基于单选输入选择在ng重复中切换元素类
- 将ID添加到按钮,但必须根据单选输入选择进行更改
- IE9看不到“;文件”;在文件输入选择框中
- 如何在不保存的情况下维护在Web表单上输入/选择的数据
- jQuery过滤器通过文本输入选择选项
- Javascript名称数组输入选择器(name[sometext])
- 我需要做些什么才能让它显示所有的用户输入/选择
- AngularJS输入选择ng模型中的整数值停止工作
- Ruby on rails-使用AJAX更新输入-选择选项
- 在动态生成的HTML中使用CSS布局标签/输入/选择元素的问题
- 动态抓取输入/选择值而不直接瞄准- Javascript