|
|
@@ -616,12 +616,12 @@
|
|
|
|
|
|
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);
|
|
|
if (getActiveTests()[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;
|
|
|
@@ -630,7 +630,7 @@
|
|
|
for (var pos = tmpBuffer.length - 1; pos >= 0; pos--) {
|
|
|
var testPos = determineTestPosition(pos);
|
|
|
if (getActiveTests()[testPos].optionality) {
|
|
|
- if (getPlaceHolder(pos) == buffer[pos] || !isMask(pos))
|
|
|
+ if (!isMask(pos) || !isValid(pos, buffer[pos], buffer, true))
|
|
|
tmpBuffer.pop();
|
|
|
else break;
|
|
|
} else break;
|