ソースを参照

alternation with greedy false fix

Robin Herbots 11 年 前
コミット
2a7612972f

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

@@ -262,7 +262,7 @@
         }
         function getTestTemplate(pos, ndxIntlzr, tstPs) {
             function checkAlternationMatch(test, altNdx, altArr) {
-                for (var isMatch = !1, altLocArr = test.locator[altNdx].toString().split(","), alndx = 0; alndx < altLocArr.length; alndx++) if (-1 != $.inArray(altLocArr[alndx], altArr)) {
+                for (var altArrC = opts.greedy ? altArr : altArr.slice(0, 1), isMatch = !1, altLocArr = test.locator[altNdx].toString().split(","), alndx = 0; alndx < altLocArr.length; alndx++) if (-1 != $.inArray(altLocArr[alndx], altArrC)) {
                     isMatch = !0;
                     break;
                 }

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

@@ -260,7 +260,7 @@
         }
         function getTestTemplate(pos, ndxIntlzr, tstPs) {
             function checkAlternationMatch(test, altNdx, altArr) {
-                for (var isMatch = !1, altLocArr = test.locator[altNdx].toString().split(","), alndx = 0; alndx < altLocArr.length; alndx++) if (-1 != $.inArray(altLocArr[alndx], altArr)) {
+                for (var altArrC = opts.greedy ? altArr : altArr.slice(0, 1), isMatch = !1, altLocArr = test.locator[altNdx].toString().split(","), alndx = 0; alndx < altLocArr.length; alndx++) if (-1 != $.inArray(altLocArr[alndx], altArrC)) {
                     isMatch = !0;
                     break;
                 }

ファイルの差分が大きいため隠しています
+ 1 - 1
dist/jquery.inputmask.bundle.min.js


+ 2 - 1
js/jquery.inputmask.js

@@ -456,9 +456,10 @@
             }
             function getTestTemplate(pos, ndxIntlzr, tstPs) {
                 function checkAlternationMatch(test, altNdx, altArr) {
+                    var altArrC = opts.greedy ? altArr : altArr.slice(0, 1);
                     var isMatch = false, altLocArr = test.locator[altNdx].toString().split(",");
                     for (var alndx = 0; alndx < altLocArr.length; alndx++) {
-                        if ($.inArray(altLocArr[alndx], altArr) != -1) {
+                        if ($.inArray(altLocArr[alndx], altArrC) != -1) {
                             isMatch = true;
                             break;
                         }

+ 2 - 2
qunit/tests_multi.js

@@ -39,7 +39,7 @@ asyncTest("inputmask({ mask: [\"999.999.999-99\", \"99.999.999/9999-99\"]}) - in
     }, 0);
 });
 
-asyncTest("inputmask({ mask: [\"99999\", \"99999-9999\"]]}) - input 12345", function () {
+asyncTest("inputmask({ mask: [\"99999\", \"99999-9999\"]]}) - input 12345 greedy + blur", function () {
     var $fixture = $("#qunit-fixture");
     $fixture.append('<input type="text" id="testmask" />');
     $("#testmask").inputmask({ mask: ["99999", "99999-9999"] });
@@ -53,7 +53,7 @@ asyncTest("inputmask({ mask: [\"99999\", \"99999-9999\"]]}) - input 12345", func
         $("#testmask").remove();
     }, 0);
 });
-asyncTest("inputmask({ mask: [\"99999\", \"99999-9999\"]]}) - input 12345", function () {
+asyncTest("inputmask({ mask: [\"99999\", \"99999-9999\"]]}) - input 12345 not greedy", function () {
     var $fixture = $("#qunit-fixture");
     $fixture.append('<input type="text" id="testmask" />');
     $("#testmask").inputmask({ mask: ["99999", "99999-9999"], greedy: false, keepStatic: true });