有没有办法让用户只输入三个字符?例如,我只想在输入文本字段中允许3
,6
或9
。
答案 0 :(得分:4)
以下是使用jQuery的方法:http://jsfiddle.net/ThiefMaster/UZJn2/
<input type="text" maxlength="1" class="only369" />
$('.only369').keyup(function(e) {
if(this.value != '3' && this.value != '6' && this.value != '9') {
this.value = '';
}
});
答案 1 :(得分:2)
纯JS解决方案:
http://jsfiddle.net/ampersand/eg8Dn/
源:
<input id="number" type="number" min="3" max="9" step="3" value="3">
<script>
document.getElementById('number').addEventListener('keyup',function(ev){
this.value=!!~['3','6','9'].indexOf(this.value) ? this.value : '';
})
</script>
答案 2 :(得分:1)
我认为这可能对你有帮助......
<script type="text/javascript">
function validate(e)
{
return (e.charCode == 51 || e.charCode == 54 || e.charCode == 57)
}
</script>
<form>
<input name="name" type="text" onkeypress="return validate(event);" />
</form>
如果要限制出现的次数,只需设置输入字段的maxlength属性。
答案 3 :(得分:0)
简短回答:
"0123456789".replace(/[^369]/g, "")
答案 4 :(得分:0)
当然。在输入元素上侦听onchange
事件,当值与这三个数字不同且大于树时,return false
。
答案 5 :(得分:0)
使用onchange="this.value=this.value.replace(/[^369]/g, '')"
答案 6 :(得分:0)
使用此插件。它是 FANTASTIC :Alphanumeric
您的问题的答案就像这个
一样简单$('.numericInput').numeric({ichars:'0124578'});
你有没有必要预防? 用户输入某些字符 进入你的形式?
查看可用的插件 jQuery,我发现了一个很棒的插件 Sam Collet打电话给Numeric。
但它太有限了,如果我是 要求用户创建用户名? 或者如果我需要输入一个数字怎么办? 带小数或IP地址?那里 是另一个名为Masked的好插件 乔什布什的投入,也可以 通过定义掩码来控制用户输入。 然而问题是 要插入的文本长度必须是 定义也是如此。再说一遍,如果我 需要控制用户名的输入? 我不知道有多少人物 用户将使用,我不能强迫 他只用了8个字符,所以我 创建了AlphaNumeric。
jQuery AlphaNumeric是一个javascript 控件插件,允许你 限制用户可以输入的字符 在文本框或textareas上。玩得开心。