如何使用三元运算符更改 AngularJS 中 ng-model 的值?
How to use ternary operator to change value of ng-model in AngularJS?
我有一个文本字段和一个复选框。如果复选框为真,我希望地址字段中的值成为复选框之后的值,如果为假,则该字段应为空。我用 ng-class 等尝试了三元运算符,但没有成功。最好的可行解决方案是什么?
<form name="form" ng-app>
<div class="form-group form-group-lg required">
<label class="col-md-2 control-label">Address:</label>
<div class="col-md-10" ">
<input type="text " name="address " class="form-control " ng-model="address " ng-minlength="4 " placeholder="Address " required>
</div>
</div>
<div class="form-group form-group-lg">
<label class="col-md-2 control-label">Return Address</label>
<div class="col-md-10">
<div class="input-group">
<span class="input-group-addon">
<!--condition ? first_expression : second_expression; -->
<input type="checkbox" ng-model="isReturnAddress" ng-change="">
</span><!--condition ? first_expression : second_expression; -->
<input type="text" class="form-control" ng-model="address">
</div>
{{isReturnAddress}}
</div>
</div>
<button type="submit " class="btn btn-primary btn-large " ng-click="submitted=true ">Submit</button>
在这种情况下,您应该使用两个输入元素。喜欢
<input ng-if="isReturnAddress" type="text" class="form-control" ng-model="address">
<input ng-if="!isReturnAddress" type="text" class="form-control">
在您的控制器中,请检查
if($scope.isReturnAddress){
var address = $scope.address;
}
在此处查看工作fiddle
我有一个文本字段和一个复选框。如果复选框为真,我希望地址字段中的值成为复选框之后的值,如果为假,则该字段应为空。我用 ng-class 等尝试了三元运算符,但没有成功。最好的可行解决方案是什么?
<form name="form" ng-app>
<div class="form-group form-group-lg required">
<label class="col-md-2 control-label">Address:</label>
<div class="col-md-10" ">
<input type="text " name="address " class="form-control " ng-model="address " ng-minlength="4 " placeholder="Address " required>
</div>
</div>
<div class="form-group form-group-lg">
<label class="col-md-2 control-label">Return Address</label>
<div class="col-md-10">
<div class="input-group">
<span class="input-group-addon">
<!--condition ? first_expression : second_expression; -->
<input type="checkbox" ng-model="isReturnAddress" ng-change="">
</span><!--condition ? first_expression : second_expression; -->
<input type="text" class="form-control" ng-model="address">
</div>
{{isReturnAddress}}
</div>
</div>
<button type="submit " class="btn btn-primary btn-large " ng-click="submitted=true ">Submit</button>
在这种情况下,您应该使用两个输入元素。喜欢
<input ng-if="isReturnAddress" type="text" class="form-control" ng-model="address">
<input ng-if="!isReturnAddress" type="text" class="form-control">
在您的控制器中,请检查
if($scope.isReturnAddress){
var address = $scope.address;
}
在此处查看工作fiddle