ソースを参照

enhance check in clear optional tail

Robin Herbots 12 年 前
コミット
768977d4cf

BIN
dist/jQuery.InputMask.1.3.9.nupkg


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

@@ -497,21 +497,21 @@
 
             function clearOptionalTail(input, buffer) {
                 checkVal(input, buffer, false);
-                var tmpBuffer = buffer.slice();
+                var tmpBuffer = buffer.slice(), testPos, pos;
                 if ($(input).data('inputmask')['isRTL']) {
-                    for (var pos = 0; pos <= tmpBuffer.length - 1; pos++) {
-                        var testPos = determineTestPosition(pos);
+                    for (pos = 0; pos <= tmpBuffer.length - 1; pos++) {
+                        testPos = determineTestPosition(pos);
                         if (tests[testPos].optionality) {
-                            if (getPlaceHolder(pos) == buffer[pos] || !isMask(pos))
+                            if (!isMask(pos) || !isValid(pos, buffer[pos], buffer, true))
                                 tmpBuffer.splice(0, 1);
                             else break;
                         } else break;
                     }
                 } else {
-                    for (var pos = tmpBuffer.length - 1; pos >= 0; pos--) {
-                        var testPos = determineTestPosition(pos);
+                    for (pos = tmpBuffer.length - 1; pos >= 0; pos--) {
+                        testPos = determineTestPosition(pos);
                         if (tests[testPos].optionality) {
-                            if (getPlaceHolder(pos) == buffer[pos] || !isMask(pos))
+                            if (!isMask(pos) || !isValid(pos, buffer[pos], buffer, true))
                                 tmpBuffer.pop();
                             else break;
                         } else break;

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


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


+ 7 - 7
js/jquery.inputmask.js

@@ -497,21 +497,21 @@
 
             function clearOptionalTail(input, buffer) {
                 checkVal(input, buffer, false);
-                var tmpBuffer = buffer.slice();
+                var tmpBuffer = buffer.slice(), testPos, pos;
                 if ($(input).data('inputmask')['isRTL']) {
-                    for (var pos = 0; pos <= tmpBuffer.length - 1; pos++) {
-                        var testPos = determineTestPosition(pos);
+                    for (pos = 0; pos <= tmpBuffer.length - 1; pos++) {
+                        testPos = determineTestPosition(pos);
                         if (tests[testPos].optionality) {
-                            if (getPlaceHolder(pos) == buffer[pos] || !isMask(pos))
+                            if (!isMask(pos) || !isValid(pos, buffer[pos], buffer, true))
                                 tmpBuffer.splice(0, 1);
                             else break;
                         } else break;
                     }
                 } else {
-                    for (var pos = tmpBuffer.length - 1; pos >= 0; pos--) {
-                        var testPos = determineTestPosition(pos);
+                    for (pos = tmpBuffer.length - 1; pos >= 0; pos--) {
+                        testPos = determineTestPosition(pos);
                         if (tests[testPos].optionality) {
-                            if (getPlaceHolder(pos) == buffer[pos] || !isMask(pos))
+                            if (!isMask(pos) || !isValid(pos, buffer[pos], buffer, true))
                                 tmpBuffer.pop();
                             else break;
                         } else break;