我一直在寻找一种基于选择来显示HTML内容块的方法。
我不想在这个问题上使用ng-include
。我查看了ng-if
和ng-show/hide
。
我希望ng-switch
使用<select ng-change="selectedAction(selectedType)"
ng-model="selectedType"
ng-options="type.name for type in relationshipType">
<option value="">-- Select item --</option>
</select>
<div ng-switch on="selectedType">
<span ng-switch-when="king">
King Julien
</span>
<span ng-switch-when="Feet">
Mort
</span>
</div>
执行此操作,this demo它似乎有效...但不是在我的代码中,有任何建议吗?
HTML:
$scope.relationshipType = [{name:'king'},{name:'feet'}];
控制器:
{{1}}
答案 0 :(得分:3)
你写type.name for type in relationshipType
。这将选择整个对象,例如{name:'feet'}
与字符串feet
不同。尝试:
<div ng-switch on="selectedType.name">
<span ng-switch-when="king">
...
此外,比较区分大小写,所以:
<span ng-switch-when="feet">
(小写f,如模型中所定义)