浏览代码

start decimal with radixpoint entry

Robin Herbots 11 年之前
父节点
当前提交
5412831986

+ 5 - 1
dist/inputmask/jquery.inputmask.numeric.extensions.js

@@ -122,7 +122,7 @@
                 return !1;
                 return !1;
             },
             },
             radixHandler: function(chrs, maskset, pos, strict, opts) {
             radixHandler: function(chrs, maskset, pos, strict, opts) {
-                if (!strict && chrs === opts.radixPoint) {
+                if (!strict && chrs === opts.radixPoint && opts.digits > 0) {
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join("").match(opts.regex.integerPart(opts));
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join("").match(opts.regex.integerPart(opts));
                     if (-1 != radixPos && maskset.validPositions[radixPos]) return maskset.validPositions[radixPos - 1] ? {
                     if (-1 != radixPos && maskset.validPositions[radixPos]) return maskset.validPositions[radixPos - 1] ? {
                         caret: radixPos + 1
                         caret: radixPos + 1
@@ -131,6 +131,10 @@
                         c: integerValue[0],
                         c: integerValue[0],
                         caret: radixPos + 1
                         caret: radixPos + 1
                     };
                     };
+                    if (!integerValue || "0" == integerValue[0]) return maskset.buffer[integerValue ? integerValue.index : pos] = "0", 
+                    {
+                        pos: (integerValue ? integerValue.index : pos) + 1
+                    };
                 }
                 }
                 return !1;
                 return !1;
             },
             },

+ 5 - 1
dist/jquery.inputmask.bundle.js

@@ -1869,7 +1869,7 @@
                 return !1;
                 return !1;
             },
             },
             radixHandler: function(chrs, maskset, pos, strict, opts) {
             radixHandler: function(chrs, maskset, pos, strict, opts) {
-                if (!strict && chrs === opts.radixPoint) {
+                if (!strict && chrs === opts.radixPoint && opts.digits > 0) {
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join("").match(opts.regex.integerPart(opts));
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join("").match(opts.regex.integerPart(opts));
                     if (-1 != radixPos && maskset.validPositions[radixPos]) return maskset.validPositions[radixPos - 1] ? {
                     if (-1 != radixPos && maskset.validPositions[radixPos]) return maskset.validPositions[radixPos - 1] ? {
                         caret: radixPos + 1
                         caret: radixPos + 1
@@ -1878,6 +1878,10 @@
                         c: integerValue[0],
                         c: integerValue[0],
                         caret: radixPos + 1
                         caret: radixPos + 1
                     };
                     };
+                    if (!integerValue || "0" == integerValue[0]) return maskset.buffer[integerValue ? integerValue.index : pos] = "0", 
+                    {
+                        pos: (integerValue ? integerValue.index : pos) + 1
+                    };
                 }
                 }
                 return !1;
                 return !1;
             },
             },

文件差异内容过多而无法显示
+ 1 - 1
dist/jquery.inputmask.bundle.min.js


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

@@ -154,13 +154,16 @@ Optional extensions on the jquery.inputmask base
                 return false;
                 return false;
             },
             },
             radixHandler: function (chrs, maskset, pos, strict, opts) {
             radixHandler: function (chrs, maskset, pos, strict, opts) {
-                if (!strict && chrs === opts.radixPoint) {
+                if (!strict && chrs === opts.radixPoint && opts.digits > 0) {
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join('').match(opts.regex.integerPart(opts));
                     var radixPos = $.inArray(opts.radixPoint, maskset.buffer), integerValue = maskset.buffer.join('').match(opts.regex.integerPart(opts));
 
 
                     if (radixPos != -1 && maskset["validPositions"][radixPos]) {
                     if (radixPos != -1 && maskset["validPositions"][radixPos]) {
                         if (maskset["validPositions"][radixPos - 1])
                         if (maskset["validPositions"][radixPos - 1])
                             return { "caret": radixPos + 1 };
                             return { "caret": radixPos + 1 };
                         else return { "pos": integerValue.index, c: integerValue[0], "caret": radixPos + 1 };
                         else return { "pos": integerValue.index, c: integerValue[0], "caret": radixPos + 1 };
+                    } else if (!integerValue || integerValue["0"] == "0") {
+                        maskset.buffer[integerValue ? integerValue.index : pos] = "0";
+                        return { "pos": (integerValue ? integerValue.index : pos) + 1 };
                     }
                     }
                 }
                 }
                 return false;
                 return false;