Итак, я смотрю на этот кусок кода:Что такое «Угловой» способ обработки формы?
function checkFormElements(field) {
if ($scope.options === undefined || $scope.optionsForm.$error[field] === undefined) {
return false;
}
var result = false;
$.each($scope.optionsForm.$error[field], function(index, value) {
// TODO: There *has* to be a better way than this to get the element. Angular must know the form control, whether it's named or not.
var element = $('[name=' + value.$name + ']');
if (!element.prop('disabled')) {
result = true;
}
});
return result;
}
$scope.formIsInvalid = function() {
return checkFormElements("pattern");
};
$scope.fieldIsEmpty = function() {
if ($scope.options === undefined || $scope.formIsInvalid()) {
return false;
}
return checkFormElements("required");
};
И я бы очень хотел, чтобы очистить эту TODO.
элементов формы генерируются в директиве по:
template: '\
<input class="output-input" id="{{fieldName}}-input" name="{{fieldName}}" type="text" maxlength="64" ng-model="item.name" ng-pattern="pattern" ng-required="true" ng-trim="false" ng-disabled="item.save===false">\
<div class="save-column" ng-if="showSave"><input type="checkbox" ng-model="item.save" ng-disabled="item.save === undefined" ng-checked="(item.save === undefined) || item.save"></div>\
',
Основная функциональность:
- Есть несколько редактирования поля с экономии поле рядом с ними.
- Если поля имеют в них нежелательные сообщения, то поле формы $ error.pattern существует. Если поле пустое, тогда существует ошибка $ error.required
- Мы обрабатываем все подобные ошибки, проверяем, включен ли элемент, генерирующий его (поскольку блокировка отключений может содержать нежелательный контент или быть пустым), и если они это сделают, мы объявляем форму недействительной и, следовательно, не подходим для отправки.
Похоже, что есть способ решить это, что более похоже на угловой стиль, и я хотел бы знать, что это такое.
Возможно, вы захотите проверить этот блог - https://scotch.io/tutorials/angularjs-form-validation – callmekatootie
[Здесь] (https://github.com/paulyoder/angular-bootstrap-show-errors) является хорошей статьей об оценках angularjs с загрузкой –