Browse Source

allow signing in numeric

Robin Herbots 11 years ago
parent
commit
47c14e37e4
1 changed files with 20 additions and 1 deletions
  1. 20 1
      js/jquery.inputmask.numeric.extensions.js

+ 20 - 1
js/jquery.inputmask.numeric.extensions.js

@@ -12,7 +12,8 @@ Optional extensions on the jquery.inputmask base
     $.extend($.inputmask.defaults.aliases, {
     $.extend($.inputmask.defaults.aliases, {
         'numeric': {
         'numeric': {
             mask: function (opts) {
             mask: function (opts) {
-                var mask = opts.prefix + "~{1," + opts.integerDigits + "}";
+                var mask = opts.prefix;
+                mask += "[+]~{1," + opts.integerDigits + "}";
                 mask += "[" + opts.radixPoint + "~{" + opts.digits + "}]";
                 mask += "[" + opts.radixPoint + "~{" + opts.digits + "}]";
                 mask += opts.suffix;
                 mask += opts.suffix;
                 return mask;
                 return mask;
@@ -62,14 +63,32 @@ Optional extensions on the jquery.inputmask base
 
 
                 return reformatOnly ? pos : newPos;
                 return reformatOnly ? pos : newPos;
             },
             },
+            regex: {
+                signed: function (opts) { }
+            },
             definitions: {
             definitions: {
                 '~': {
                 '~': {
                     validator: function (chrs, buffer, pos, strict, opts) {
                     validator: function (chrs, buffer, pos, strict, opts) {
+                        if (chrs === "-") {
+                            //negate value
+                        }
                         var isValid = new RegExp("[0-9]").test(chrs);
                         var isValid = new RegExp("[0-9]").test(chrs);
                         return isValid;
                         return isValid;
                     },
                     },
                     cardinality: 1,
                     cardinality: 1,
                     prevalidator: null
                     prevalidator: null
+                },
+                '+': {
+                    validator: function (chrs, buffer, pos, strict, opts) {
+                        var signed = "[";
+                        if (opts.allowMinus === true) signed += "-";
+                        if (opts.allowPlus === true) signed += "\+";
+                        signed += "]";
+                        var isValid = new RegExp(signed).test(chrs);
+                        return isValid;
+                    },
+                    cardinality: 1,
+                    prevalidator: null
                 }
                 }
             },
             },
             insertMode: true,
             insertMode: true,