Javascript 如何仅允许文本框中包含数字和以下百分比符号?
我目前正在构建一个应用程序,我想要一个javascript或jquery条件,该条件只允许在文本框中输入数字和/或以下百分比,但我不确定如何获得该值。。。我发现,但如何允许以下百分比试试这个。在这里,您可以添加您想要允许或限制的其他内容Javascript 如何仅允许文本框中包含数字和以下百分比符号?,javascript,jquery,Javascript,Jquery,我目前正在构建一个应用程序,我想要一个javascript或jquery条件,该条件只允许在文本框中输入数字和/或以下百分比,但我不确定如何获得该值。。。我发现,但如何允许以下百分比试试这个。在这里,您可以添加您想要允许或限制的其他内容 $("textboxSelector").keypress(function(e) { var key = e.which; if ((key < 48 || key > 57) && !(key == 8 || key ==
$("textboxSelector").keypress(function(e) {
var key = e.which;
if ((key < 48 || key > 57) && !(key == 8 || key == 9 || key == 13 || key == 37 || key == 39 || key == 46) ){
return false;
}
});
$(“textboxSelector”)。按键(功能(e){
var-key=e.which;
如果((键<48 | |键>57)和&!(键==8 | |键==9 | |键==13 | |键==37 | |键==39 | |键==46)){
返回false;
}
});
$(文档).ready(函数(){
$(“#我的输入”)。按键(功能(事件){
//仅允许退格、删除和百分号
if(event.keyCode==46 | | event.keyCode==8 | | event.keyCode==37){
//让它发生吧,什么都不要做
}
否则{
//确保它是一个数字并停止按键
如果(event.keyCode<48 | | event.keyCode>57){
event.preventDefault();
}
}
});
});
演示:试试这个
$(".common").submit(function(){
var inputVal = $('#input').val();
var characterReg = /^[0-9]+%?$/;
if (!characterReg.test(inputVal)) {
alert('in-correct');
}
else
{
alert('correct');
}
return false;
});
呵呵,这就是我想到的
if(!parseInt(String.fromCharCode(event.keyCode)))
event.preventDefault();
这应该在
kepress
jquery事件中使用 您希望使用该链接中的哪些建议?对于大多数情况,它只是指定一个包含数字的正则表达式,我假设%总是在末尾出现?在触发keyup
事件时,字符将已经显示出来。我想他是想用keypress
@AlienWebguy-编辑我的答案,用keypup替换为keypdown,现在可以了。谢谢你,删除了我的否决票。不过我认为马特关于按键的看法是对的。这和换档键有关。是的,兄弟,这仍然不起作用。我可以添加@#$^&*()
这是每个OP的请求所不允许的。@AlienWebguy-这是由于keydown事件,将其更改为keypress。现在它可以正常工作了,非常感谢:)这将只允许在文本字段上复制粘贴结尾字符处的数字和/或%,!!您能更新答案吗…??@Aju在这一点上,将由您决定如何处理-您会拒绝整个粘贴内容还是过滤掉无效字符?我不会说你的评论有“正确”的答案。肯定有多种方法可以奏效。
if(!parseInt(String.fromCharCode(event.keyCode)))
event.preventDefault();