1

抱歉,问题标题很长,但我不确定最好的表达方式:-(

问题是 Josh Bush 出色的 Masked Input jQuery 插件在掩码长度固定时选择焦点输入框中的文本,但是当掩码中有可选字符时,它会强制插入符号到字段的末尾。

如果你去他的演示页面(http://digitalbush.com/projects/masked-input-plugin/)你可以看到这个。

在“日期”、“电话”和“电话 + 分机”字段中填写一些值,然后按 Tab 键浏览它们。您会注意到,当字段获得焦点时,日期和电话字段被完全选中,但是当您进入电话 + 分机字段时,插入符号会转到字段的末尾。

我希望所有屏蔽字段的行为都相同(选择所有文本,如上面的前两个示例),无论是否有可选的屏蔽字符。

有没有其他人解决过这个问题,如果是这样,你能发布一下你是怎么做的吗?

提前致谢。!

固定长度的掩码选择所有文本,像这样...... 带有可选字符的掩码将插入符号强制到字段的末尾。

4

1 回答 1

1

如果您不介意更改 jquery.maskedinput-1.3.1.js,请替换从第 308 行开始的这段代码:

caretTimeoutId = setTimeout(function(){
                writeBuffer();
                var trimmedMask = mask.replace('?','');
                if (pos == trimmedMask.length) {
                    input.caret(0, pos);
                } else {
                    input.caret(pos);
                }
            }, 10);

在缩小的文件中,您需要在字符 3075 处替换它:

var t2=t.replace('?','');b(),e==t2.length

在发布有关同一问题的问题后,我发现了您的问题: https ://stackoverflow.com/questions/19794942/jquery-masked-input-will-not-select-on-focus-when-mask-contains-optional-operato

于 2013-11-06T14:41:17.180 回答