我想写一些自定义表单验证。我的指令工作正常。它正在被加载。但我想要进行实时表单验证。这意味着,虽然输入元素正在输入,我想确保它的验证。我不能为了我的生活似乎弄清楚如何得到这个输入表单的结果,以便它可以被指令看到。AngularJS无法获得表单输入指令
package.js
define([
'angular',
'bb/checkout/form-validation/form-validation.directive'
],
function defineFormValidationPackage(
angular,
formValidation
) {
'use strict';
var module = angular.module('checkout.form-validation', []);
module.directive('cardFormValidation', formValidation);
return module;
}
);
形式,validation.directive.js
define(function defineFormValidation() {
'use strict';
function formValidation() {
return {
restrict: 'C',
scope: {
addCardScope: '@'
},
link: function ($scope, $element, $attrs) {
$scope.addCardScope = $scope.addCardScope || {};
var city = $scope.addCardScope.city;
$element.on('keypress', function(event) {
console.log("CITY: ", $scope.addCardScope);
});
}
};
}
return formValidation;
});
HTML
<form id="ccForm" class="card-form-validation customer-address-form" name="ccForm" formid="ccForm" action="" method="post">
<input id="city" type="text" class="validate" ng-model="addCardScope.city" maxlength="30" />
<div>{{addCardScope.city}}</div>
</form>
不幸的是,我们目前使用的角度1.2.30,并不在它可以升级点。我已经查看了1.2.30的表单文档,看来他们没有按照我尝试完成的方式进行。 – phelix
我已删除表单中的指令,并可能决定这将是清洁剂对每个单独的形式元素的指令,因为每场都会有不同形式的验证。所以标记现在是这样的。 '