尝试与正则表达式匹配,它必须是一个数字,并且不能超过10个数字。其他没有显示!
match(/[^0-9]|[0-9]{10,80}/)
第一部分有效,表示它不是数字,但第二部分无效(如果大于10)。
https://vuejs.org/v2/guide/migration.html#ready-replaced
我可以用另一种方式来做,但是我想用正则表达式来..谢谢!
(function($){
$('input').on( 'keypress', function(e){
var char = String.fromCharCode(e.keyCode);
if ( char.match(/[^0-9]|[0-9]{10,80}/) ) {
e.preventDefault();
}
});
})(jQuery)
HTML:
<input type="text">
答案 0 :(得分:1)
您要检查char
是否与正则表达式匹配,但是您要检查input
的全部内容是否与您的正则表达式匹配。如果您将id="myinput"
添加到<input>
并在javascript中添加
var inputdata = document.getElementById("myinput").value;
然后,您可以检查inputdata
是否与您的正则表达式匹配。
此外,您还要检查{10,80}
,即10
和80
之间,但也可以将其更改为{10,}
,即10
或{{ 1}}