用短划线angularjs验证数字
Validating number with dashes angularjs
嗨,我有一个输入字段,我想在其中进行验证,这样输入只有数字,但有破折号和最大11个数字的
i.e 1233-224-1234
我已经应用了以下验证,只接受数字
<input ng-pattern="customNum" ng-model=value.id />
In my controller I have
function myCtrl($scope) {
$scope.customNum = /^'d+$/;
}
请让我知道如何更新,以便输入13位数字,其中11位是数字,2位是短划线。感谢
请参阅此处:http://jsbin.com/talaz/1/
<form name="form" class="css-form" novalidate>
<input type="text" ng-model="code" name="code" ng-pattern='/^'d{4}-'d{3}-'d{4}$/' />Code :{{code}}<br />
<span ng-show="form.size.$error.pattern ">
The code need to falow that 1234-123-1234 pattern</span>
</form>
如果数字不固定,您可以尝试:
^'d+[-]'d+[-]'d+$
如果你的数字是固定的,那么:
^'d{4}-'d{3}-'d{4}$
如果你想要一个可重复使用的验证,可以在很多地方使用,也可以在一个地方更改,你可以使用自定义的验证器指令。我称之为信用卡验证器只是为了举例。
<form name="form">
<input type="text" ng-model="user.creditcard" name="creditcardNumber" validate-creditcard>
<span ng-show="form.creditcardNumber.$error.creditcard">
This is not a valid credit card number.
</span>
</form>
app.directive('validateCreditcard', function() { var creditcardRegex = /^'d{4}-'d{3}-'d{4}$/; return { restrict: 'A', require: 'ngModel', link: function(scope, el, attr, ngModelCtrl) { ngModelCtrl.$parsers.unshift(function(input) { var valid = creditcardRegex.test(input); ngModelCtrl.$setValidity('creditcard', valid); return valid; }); } }; });
plnkr 上的示例
相关文章:
- 我应该使用什么正则表达式来验证数字模式
- 仅在jQuery验证中验证数字、括号和空格
- 验证数字是否在0.00到20.00之间的正则表达式
- 用于验证数字范围的正则表达式
- 如何验证数字是否为整数
- javascript/jQuery:使用 .each 时验证数字
- 仅验证数字字符的 PDF 表单字段
- 欧芹.js - 仅验证数字的可选输入
- 如何在Javascript中使用正则表达式来验证数字
- 如何使用Javascript针对0.5增量验证数字
- 使用javascript中的常规exp验证数字,但在一种情况下不起作用
- 验证数字Javascript
- Javascript验证数字xhtml
- Angular JS-如何验证数字输入中的位数
- 用短划线angularjs验证数字
- 验证数字并允许空格
- Javascript 正则表达式,用于验证数字是否以前导零开头
- 如何在javascript中验证数字输入
- 在Javascript中验证数字
- JavaScript -仅验证数字/字母