0
我有这个简单的表单,需要一个文本框和一个保存按钮。角度表单验证不起作用
<form role="form" name="frmVariableConfig" novalidate ng-submit="frmVariableConfig.$valid && vm.saveChanges()">
<input type="text" ng-model="vm.CurrCustomer.Name" name="txtCustomerName" class="form-control input-sm validate[required]" placeholder="txtCustomerName" check-validation>
<button type="submit" class="btn btn-sm text-right">Save</button>
</form>
我使用这个指令激活jQuery验证引擎
angular.module('app').directive('checkValidation', [
function() {
return {
restrict: 'A',
require: '?ngModel',
link: function (scope, element, attrs, ngModel) {
element.closest('form').validationEngine(
{
promptPosition: 'centerRight',
scroll: true, prettySelect: true,
autoPositionUpdate: true,
//validateNonVisibleFields: true,
//autoHidePrompt: true,
autoHideDelay: 1000,
fadeDuration: 0.9
}
);
}
};
}]);
但它一直在呼吁的SaveChanges(),即使文本框为空。如果文本框为空,它不应该调用这个函数。
请帮忙。
你有没有考虑使用[角度验证(https://docs.angularjs.org/guide/forms)? –
放弃了,现在使用角度验证:)我的下拉是一个引导选择,它有一些隐藏的东西需要验证。所以现在的行为是好的,但我得到一个无效的表单控件与name = xxx是不可聚焦的。“保存错误。 –
其实它不涉及这个问题,但其余的东西工作。 –