Angularjs 使用复选框和下拉选择禁用输入字段
我总共有3个字段。第一个是复选框。选择后,应激活输入字段。第二个是下拉列表,当选择某个选项时,应激活输入字段。第三个字段是实际输入字段,只有选中复选框且下拉列表具有特定选择时,才需要激活该字段Angularjs 使用复选框和下拉选择禁用输入字段,angularjs,Angularjs,我总共有3个字段。第一个是复选框。选择后,应激活输入字段。第二个是下拉列表,当选择某个选项时,应激活输入字段。第三个字段是实际输入字段,只有选中复选框且下拉列表具有特定选择时,才需要激活该字段 <input type="checkbox" ng-model="checkValue"> <select name="select" ng-model="selectValue"> <option value="option-1">Option 1</opt
<input type="checkbox" ng-model="checkValue">
<select name="select" ng-model="selectValue">
<option value="option-1">Option 1</option>
<option value="option-2">Option 2</option>
<option value="option-3">Option 3</option>
<option value="option-4">Option 4</option>
</select>
<input type="text" ng-model="inputValue" ng-disabled="!checkValue && selectValue != 'option-1'">
选择1
选择2
选择3
选择4
您的评论是对的,它在复选框中绕过了您的selectbox型号。下面的东西在fidde对我有用
<input type="text" ng-model="inputValue" ng-disabled="(!checkValue) || (checkValue && selectValue == undefined)">
检查小提琴:
通过添加控制输入框状态的范围函数,可以添加更健壮的场景
<input type="text" ng-model="inputValue" ng-disabled="(!checkValue) || (checkValue && setInputState(selectValue))">
$scope.setInputState= function(input){
var state= false;
if(input === undefined || input != 'option-1'){
state = true;
}
return state;
}
$scope.setInputState=函数(输入){
var状态=假;
如果(输入===未定义| |输入!='选项1'){
状态=真;
}
返回状态;
}
有什么问题?它工作不正常。该字段仅受第一个操作的影响:!复选框每当下拉列表被更改时,我希望禁用字段也会更新。我没有收到您的回复。每当下拉列表更改时,禁用字段将更新,因此每当用户在启用复选框时更改下拉列表时。它应该根据下拉列表的选择切换为禁用/启用。您可以通过在控制器中添加一个检查selectbox值的函数来使用更多选项。例如,在本小提琴中,仅当选择选项-1时,框才会启用。虽然你的功能确实有效,但我也发现在ng中使用它也会使它无法正常工作。有人做了一个答案并删除了它,但这里是jfiddle。