dan*_*iel 25 tree parentid angularjs ng-options
我有这种一级树情况:
<select ng-model="tipost"
ng-options="tip.DESC group by tip.TIPIS for tip in tipall"><br>
</select>
Run Code Online (Sandbox Code Playgroud)
json在哪里:
[
{"ID":"1", "IDPARENT":"0", "TIPIS":"", "DESC":"GroupName1"},
{"ID":"2", "IDPARENT":"1", "TIPIS":"GroupName1", "DESC":"CHILDNAME1"},
{"ID":"3", "IDPARENT":"0", "TIPIS":"", "DESC":"GroupName2"}
]
Run Code Online (Sandbox Code Playgroud)
问题是,这会创建带有子项的optgroups,但也重复根:
- GroupName1
- GroupName2
[ GroupName1 ]
- CHILDNAME1
[ GroupName2 ]
Run Code Online (Sandbox Code Playgroud)
我想生产:
[ GroupName1 ]
- CHILDNAME1
[ GroupName2 ]
Run Code Online (Sandbox Code Playgroud)
Mat*_*erg 34
如果你将你的json改成这样的东西,那么分组就不那么有效了:
[
{"ID":"1", "TIPIS":"GroupName1", "DESC":"name"},
{"ID":"2", "TIPIS":"GroupName1", "DESC":"name1"},
{"ID":"3", "TIPIS":"GroupName2", "DESC":"name2"},
{"ID":"4", "TIPIS":"GroupName1", "DESC":"name3"},
]
Run Code Online (Sandbox Code Playgroud)
然后你会按照你想要的方式进行分组
jsFiddle:http://jsfiddle.net/rtCP3/182/
简单的下拉菜单可以显示包含和不包含组的项目,还可以将某些项目设置为禁用:这里是plunk:https://plnkr.co/edit/uhsn4lmzssi6rrijPEAp ? p = preview
<select ng-model="ddl.selected"
ng-options="item.id as item.text group by item.groupName disable when item.enabled===false for item in ddl.items"></select>
Run Code Online (Sandbox Code Playgroud)
我正在寻找相同的问题,并找到了更好的答案.可以使用函数来根据需要返回数据,例如getGarageName下面的查询
ng-options="car.id as car.name + ' (' + car.color + ')' group by getGarageName(car.garageId) for car in cars"
// this is the data
cars = [
{"id": 1, "name": "Diablo", "color": "red", "garageId": 1},
{"id": 2, "name": "Countach", "color": "white", "garageId": 1},
{"id": 3, "name": "Clio", "color": "silver", "garageId": 2},
...
]
garages = [
{"id": 1, "name": "Super Garage Deluxe"},
{"id": 2, "name": "Toms Eastside"},
...
]
Run Code Online (Sandbox Code Playgroud)
http://www.wenda.io/questions/2597799/angular-js-select-with-ngoptions-label-the-optgroup.html
| 归档时间: |
|
| 查看次数: |
36027 次 |
| 最近记录: |