Format credit card number

后端 未结 10 2238
梦谈多话
梦谈多话 2020-12-08 11:27

How to format and validate a credit card number with spaces between each 4 digit while typing:

eg: 4464 6846 4354 3564

I have tried:

10条回答
  •  盖世英雄少女心
    2020-12-08 12:28

    Find

    Plunker for Formatting Credit Card Numbers

    using angularjs directive. Format Card Numbers in xxxxxxxxxxxx3456 Fromat.

    angular.module('myApp', [])
    
       .directive('maskInput', function() {
        return {
                require: "ngModel",
                restrict: "AE",
                scope: {
                    ngModel: '=',
                 },
                link: function(scope, elem, attrs) {
                    var orig = scope.ngModel;
                    var edited = orig;
                    scope.ngModel = edited.slice(4).replace(/\d/g, 'x') + edited.slice(-4);
    
                    elem.bind("blur", function() {
                        var temp;
                        orig  = elem.val();
                        temp = elem.val();
                        elem.val(temp.slice(4).replace(/\d/g, 'x') + temp.slice(-4));
                    });
    
                    elem.bind("focus", function() {
                        elem.val(orig);
                   });  
                }
           };
       })
      .controller('myCtrl', ['$scope', '$interval', function($scope, $interval) {
        $scope.creditCardNumber = "1234567890123456";
      }]);
    

提交回复
热议问题