限制用户输入的内容可以有如下做法:
$("#id").keyup(fucntion(){//当键盘按下之后立即校验,并替换当前操作框中的内容 var value = $(this).val(); $(this).val(value.replace(reg,replace_data)); });
最常见的就是限制用户只能录入数字
var reg = new RegExp("[^0-9]","g");
[^0-9]表示非0-9之间的数字,g表示全局匹配,i表示不匹配大小写
注:[^x]表示匹配除了x以外的任意字符,[^aeiou]表示匹配除了aeiou之外的任意字符
另一种方法为穷举法
var reg = new RegExp("[a-zA-Z\u4e00-\u9fa5,.!?(),。..;;?、]","ig");
用这种方法的话,RegExp中的内容就要尽可能地多列举你不希望用户能输入的字符,其中\u4e00-\u9fa5表示中文字符,ig表示不区分大小写全局匹配
当你输入数字时,不希望用户输入的数字为"01"、"001"诸如此类,则可以做如下:
if(rate.length > 1){ var reg = new RegExp("^[0]*","g"); var num = rate.replace(reg,""); $(this).val(num); }
^[0]*表示以0为起始,^为起始符,*为重复零次或多次
注:这个方法我始终觉得不是最优的,不过暂时也只能想到这么做,如果有更优的做法,欢迎分享,谢谢
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持北冥有鱼!
您可能感兴趣的文章:
- jQuery实现 RadioButton做必选校验功能
- jQuery Validate 校验多个相同name的方法
- 基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
- jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
- jQuery插件Validate实现自定义校验结果样式
- jQuery中校验时间格式的正则表达式小结
- jquery对输入框内容的数字校验代码实例