1. var JVerify = {
  2. role: { number: /[0-9\/]/, decimal: /[0-9\.\/]/, code: /[0-9A-Z]/ },
  3. Verify: function () {
  4. for (var prop in JVerify.role) {
  5. $("[role^='" + prop + "']").each(function () {
  6. var obj = $(this);
  7. var values = obj.attr("role").split("-");
  8. var length = 16;
  9. if (values.length > 1) {
  10. length = values[1];
  11. }
  12. obj.attr("maxlength", length);
  13. obj.bind("input propertychange", function () {
  14. var input = $(this);
  15. var text = input.val();
  16. input.val("");
  17. var content = "";
  18. var attr = $(this).attr("role");
  19. var regex = JVerify.role[values[0]];
  20. var isDot = false;
  21. var array = attr.split("-");
  22. var number = length;
  23. if (array.length == 3) {
  24. number = Number(array[2]);
  25. }
  26. for (var i = 0, index = 0; i < text.length; i++) {
  27. if (text[0] == ".") {
  28. continue;
  29. }
  30. if (text[i] == ".") {
  31. if (isDot == false) {
  32. content += ".";
  33. isDot = true;
  34. index = i;
  35. }
  36. continue;
  37. }
  38. if ((i - 0 == 1 && text[0] == "0" && text[i] == "0") || isDot && (index + number < i)) {
  39. continue;
  40. }
  41. if (regex.test(text[i])) {
  42. content += text[i];
  43. }
  44. }
  45. input.val(content);
  46.  
  47. }).blur(function () {
  48. var value = $(this).val();
  49. if (value[value.length - 1] === ".") {
  50. $(this).val(value.substr(0, value.length - 1));
  51. }
  52. });
  53. })
  54. }
  55. }
  56. }

如只需输入小数,屏蔽非数字字符,在html中的input元素input添加属性role=“decimal-6-1”即可,尾数6为input的输入长度,1的意思为保留1位小数,调用代码如下:

  1. <input role="decimal-6-1" type="text" />
  1. JVerify.Verify();

如需自定义正则表达式,给JVerify.role添加属性即可,如下所示:

  1. JVerify.role.myRegex = /[a-z]/;

JQuery 限制文本输入只能输入数字(可自定义正则表达式)的更多相关文章

  1. 用Jquery控制文本框只能输入数字和字母

    用Jquery控制文本框只能输入数字和字母 $.fn.onlyNum = function () { $(this).keypress(function (event) { var eventObj ...

  2. JQuery 限制文本框只能输入数字和小数点

    $(function(){ /*JQuery 限制文本框只能输入数字*/ $(".NumText").keyup(function(){ $(this).val($(this).v ...

  3. JQuery限制文本框只能输入数字和小数点的方法

    <input type="text" class="txt NumText"  Width="100px"  /> $(func ...

  4. jquery 限制文本框只能输入数字

    $("input[name='fangwenyudinhuishu']").keyup(function(){ var tmptxt=$(this).val(); $(this). ...

  5. 用Jquery控制文本框只能输入数字和字母及jquery自定义方法$.fn

    封装成onlyNum(),onlyAlpha()和onlyNumAlpha()3个Jquery扩展方法,方便复用,由于里面一些JS代码涉及到了"禁用输入法,获取剪切板的内容",而& ...

  6. Jquery 校验文本框只能输入负数、小数、整数

     /*   umlzhang    date:2013-09-12   */   //检验只能输入整数,小数和负数    $(function () {          var obj = $(&q ...

  7. jQuery限制文本框只能输入正整数

    //限制键盘只能按数字键.小键盘数字键.退格键 $("#txtQty").keydown(function (e) { var code = parseInt(e.keyCode) ...

  8. jquery限制文本框只能输入金额

    $("#batch_diff_percent").keyup(function () { var reg = $(this).val().match(/\d+\.?\d{0,2}/ ...

  9. JQuery select,checkbox用法 文本框只能输入数字

    记录一下,方便查找 a.文本框只能输入数字 onkeyup='this.value=this.value.replace(/\D/gi,"")' eg: <input typ ...

  10. js控制文本框只能输入中文、英文、数字与指定特殊符号.

    先在'' 里输入 onkeyup="value=value.replace(/[^\X]/g,'')" 然后在(/[\X]/g,'')里的 X换成你想输入的代码就可以了, 中文u4 ...

随机推荐

  1. Ubuntu 中用 delphi 开发 apache

    经过近15年的沉默.delphi 10.2 终于重新开始支持linux 开发了. 今天说一下在ubuntu中开发apache的方法. 首先安装ubuntu 的delphi 开发环境,请参考以前的文章 ...

  2. java中正则表达式常用方法

    一.匹配 String  matches()方法.用规则匹配整个字符串,只要有一处不符合规则,就匹配结束,返回false. 举例: public static void checkQQ(){ Stri ...

  3. Codeforces Round #523 (Div. 2) E. Politics(最小费+思维建图)

    https://codeforces.com/contest/1061/problem/E 题意 有n个点(<=500),标记第i个点的代价a[i],然后分别在这n个点建两棵树,对于每颗树的每个 ...

  4. Win7 VS2013环境使用cuda_7.5.18

    首先得吐槽下VS2015出来快一年了CUDA居然还不支持,没办法重装系统刚从2013升到2015,还得再装回一个2013用,只为学习CUDA... 然后安装的时候,如果你选择自定义组件安装,注意不要改 ...

  5. 触摸屏 adb调试

    1.adb shell cat /proc/kmsg 这条命令肯定是要放在第一位的,可以打印内核信息,对应于驱动程序中的printk语句. 如果出现以下提示,说明权限不够,可以通过adb root获取 ...

  6. 学以致用四----centos7.2 安装python3.6

    基础配置弄好后,开始搭建环境 本次的目的是安装 python 3.6 一.安装相关的依赖包 在之前的博客里有安装python3.6的步骤,为了避免做重复的步骤.需事先准备好依赖包 yum instal ...

  7. HTML上传文件支持大文件上传,下载

    上传 1.修改配置文件web.config,在<system.webServer>下面加入 <security> <requestFiltering > <r ...

  8. C++对象模型:成员变量<一>非静态成员变量

    非静态成员变量,分别两种可能,要么类自定义,要么继承而来.根据<深度探索C++对象模型>的解读. class X { private: int x,y,z; }; 在这个类中,有三个私有成 ...

  9. onsyscommand

    简介 OnSysCommand()这个函数主要是截获控制命令的,msdn上的解释如下: The framework calls this member function when the user s ...

  10. 网络通信协议简介(TCP与UDP)

    通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样.在计算机网络中,这些连接和通信的规则被称为网络通 ...