Ответ 1
Вместо того, чтобы обрабатывать его на уровне каждого поля, вы можете поместить все элементы формы в набор полей и использовать ng-disabled для отключения всего набора полей.
Я хочу отключить все компоненты формы, чтобы его нельзя было отредактировать при нажатии кнопки просмотра. это моя форма
<form action="#" class="form-horizontal" >
<div class="form-group">
<label for="fieldname" class="col-md-3 control-label">Name</label>
<div class="col-md-6">
<input type="text" ng-model="newItem.customSelected" typeahead="name as name.name for name in members | filter:{name:$viewValue}" class="form-control" />
</div>
</div>
<div class="form-group">
<label for="fieldhname" class="col-md-3 control-label">House name</label>
<div class="col-md-6">
<input type="text" ng-model="newItem.customSelected1" typeahead="house_name as house_name.house_name for house_name in family | filter:{house_name:$viewValue}" class="form-control" />
</div>
</div>
<div class="form-group">
<label for="" class="col-md-3 control-label"><?php echo $this->lang->line('label_family_id'); ?></label>
<div class="col-md-6">
<input type="text" ng-model="newItem.customSelected2" typeahead="fm as fm.family_reg_no for fm in family | filter:{family_reg_no:$viewValue}" class="form-control" />
</div>
</div>
<div class="col-md-3"></div>
</form>
и это моя кнопка
<input type="button" class="finish btn-success btn" ng-click="view(newItem)" value="view"/>
Вместо того, чтобы обрабатывать его на уровне каждого поля, вы можете поместить все элементы формы в набор полей и использовать ng-disabled для отключения всего набора полей.
вы можете использовать тег fieldset
, окружая ваши кнопки с помощью fieldset
и используя атрибут ng-disabled
:
<form action="#" class="form-horizontal" >
<fieldset ng-disabled="isClicked">
<!--your form here --!>
</fieldset>
</form>
теперь все, что осталось, находится в функции view(newItem)
do:
$scope.view = function(newItem){
$scope.isClicked = true;
// Your code here and set it to false when your are done with it
}
Вы можете использовать наложение и иметь ng-show на нем, или вы можете добавить к каждому входу ng-disabled
ng-disabled
в сочетании с переменной области видимости для отключения полей.