如何从angular.js生成的下拉列表中将值附加到DOM
How to append values to DOM from dropdown generated by angular.js
场景是:
1.将控制器中的内容加载到
<select>
中。2.将下拉列表中的每个选定项目附加到<p>
标记,使其看起来像列表
第一部分做得很好。现在我还不知道如何"附加"所选项目。到目前为止,我所能做的就是在
标签中显示所选项目。但新项目取代了旧项目,我希望它被添加到前一个项目的旁边。
标记
<div id='content' ng-app='MyTutorialApp' ng-controller='MainController'>
<h1>My Shopping List</h1>
<select ng-model='selectedItem' ng-options='obj.name for obj in Items'></select>
<select ng-model='selectedQty'>
<option ng-repeat="label in Items[selectedItem.id].attr">{{label}}</option>
</select>
<p>{{selectedItem.name}}-{{selectedQty}}</p>
</div>
控制器
app.controller("MainController",function($scope){
$scope.inputValue="";
$scope.selectedItem=0;
$scope.selectedQty=null;
$scope.Items=[
{
id:0,
name:'Sugar',
attr:['0.5 Kg','1 Kg', '2 Kg', '5 Kg']
},
{
id:1,
name:'Salt',
attr:['0.5 Kg','1 Kg', '2 Kg', '5 Kg']
},
{
id:2,
name:'Oil',
attr:['500 ml','1 Ltr', '5 Ltr']
},
{
id:3,
name:'T-Shirts',
attr:['S', 'M', 'L','XL', 'XXL']
},
]
});
如何做到这一点?
使用{{selectedItem.name}}-{{selectedQty}}
时,将当前作用域的数据绑定到HTML文件中的该位置。这不是您想要做的(对吗?),因为您希望在选择所有选定值时附加这些值。
尝试将类似ng-change="update()"
的内容添加到<select>
元素中,并且在控制器中有一个函数可以将所选项目附加到范围上:
$scope.selectedList = new Array();
$scope.update = function() {
$scope.selectedList.push($scope.selectedItem.name)
}
不确定它的确切语法,但希望你能明白。
相关文章:
- 如何使用jQuery选择下拉列表的值
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- Javascript按钮下拉列表
- jQuery表单添加不适用于下拉列表
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 禁用jQuery中的下拉列表
- 如何在按钮中显示下拉列表中选定的元素
- 如何在从多选下拉列表中选择选项值时动态生成文本框
- 如何使用PHP和JS级联三个下拉列表
- 如何在使用剑道 MVVM 下拉列表时强制选择第一项
- 语义ui如何使用javascript启用或禁用下拉列表
- 无法使用PHP动态设置下拉列表中的值
- 如何根据对具有多行的先前列表的选择来动态加载下拉列表
- 下拉列表在使用z索引放置在前面后停止工作
- 从多维嵌套json数组创建下拉列表
- 如何在剑道下拉列表中按文本和值搜索
- 使用下拉列表筛选列表(ul>li)
- 如何从angular.js生成的下拉列表中将值附加到DOM
- DOM下拉列表与jQuery
- 使用jQuery设置动态下拉列表(DOM)的选定索引