屏蔽输入仅允许十六进制颜色

时间:2014-04-10 20:30:22

标签: javascript jquery html html5 jquery-validate

使用jQuery Validate插件或者可以手动使用jQuery,我想创建一个输入字段,它接受在开头带有'#'符号的值,以及其他6个字符。所以,输入会接受这样的东西:

#fff, #ff0000, #f00f,但会拒绝'1232131231'或其他与掩码不匹配的内容。我希望有人可以帮助我。

2 个答案:

答案 0 :(得分:-1)

没有办法让它只接受#开箱即用,但你可以做的是让它只接受数字,然后在提交后将#添加到开头。

答案 1 :(得分:-1)

试试这个:

<input type="text" id="color">

$(document).ready(function() {
    $('#color').on('keyup', function() {
        if (/^#\d{6}$/.test($(this).val())) {
            console.log("it's a hex color");
        } else {
            console.log("it's not a hex color");
        }
    });
});

工作小提琴:http://jsfiddle.net/QEsGY/