目标
当用户从列表中选择值时,我必须显示或隐藏字段。在接下来的示例中,我试图模拟我想要做的事情,
我想仅在汽车颜色设置为红色时显示输入文本字段:
代码:
每次用户选择一个选项时,我都会在控制器上设置它们的属性
$scope.CarModel.Colour = "Red";
没关系,但是一旦模型更新,我不知道如何触发ng-show =“CarCtrl.ValidateColour(CarModel.Colour)”,以隐藏或显示该字段。
<input type="text" class="form-control" id="carColour" ng-model="CarModel.Colour" ng-show="CarCtrl.ValidateColour(CarModel.Colour)">
答案 0 :(得分:0)
我通常喜欢做的是为我的演出提供辅助功能,例如......
HTML:
<input ng-model="CarModel.Colour" ng-show="showThis()">
JS:
$scope.showThis = function () {
if(CarModel.Colour == 'red') return true;
else return false;
}
答案 1 :(得分:0)
查看 Demo 你可以在没有&#34; CarCtrl的情况下调用ValidateColour()函数。&#34;因为它在范围内
function CarCtrl($scope) {
$scope.ValidateColour = function(colour){
return colour === "Red";
}
}