我无法使用inputmask编辑我的值

时间:2015-08-05 13:49:02

标签: jquery input-mask

我想用三个数字填充一个字段。我的面具配置如下:[' 009',' 099',' 999']。我希望允许像" 001"," 011"或" 111"。但是,当我把像#34; 023"并重点关注e尝试再次编辑此值,将面具放入" 234",面具不允许。我相信我的第一个" 0"与" 9"匹配掩码,因此我无法编辑。

有什么方法可以允许版本或填0,直到完成三个caracteres?

1 个答案:

答案 0 :(得分:1)

配置字段时只需使用onBeforeWrite选项。此选项允许在写入字段之前预处理数据。

假设您有一个名为hello的文本字段。

<input type="text" name="hello" id="hello">

要在字段上填充前导零,请用零替换缓冲区参数的掩码值。

$("#hello").inputmask({
    mask: "999",
    numericInput: true,
    onBeforeWrite: function (event, buffer, caretPos, opts) {
        if (event !== undefined && event.type === "blur") {
            for (var i=0; i<buffer.length; i++) {
                if (buffer[i] == "_")
                    buffer[i] = '0';
            };
        }
    }
});