其实老干部也会犯错,今天朋友在银行卡账号时候要求输入数字,它的正则竟然排除中文。其实正则是很重要的。废话少说。如果禁止中文呢

  • ime-mode

  但是这个方法兼容性并不是很好,首先我们得知道。

  css 之 ime-mode
  语法:
  ime-mode : auto | active | inactive | disabled
  取值:
  auto : 默认值。不影响ime的状态。与不指定 ime-mode 属性时相同
  active : 指定所有使用ime输入的字符。即激活本地语言输入法。用户仍可以撤销激活ime
  inactive : 指定所有不使用ime输入的字符。即激活非本地语言。用户仍可以撤销激活ime
  disabled : 完全禁用ime。对于有焦点的控件(如输入框),用户不可以激活ime

  说明:设置或检索是否允许用户激活输入中文,韩文,日文等的输入法(ime)状态。此属性对于 currentstyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 imemode 。

  就是这样。所以当某个文本域不需要中文输入的时候,我们可以通过设置 ime-mode 属性值为 inactive 或者 disabled,减少错误的可能性。同样的我们可以设置那些需要中文输入的文本域的 ime-mode 属性值为 active。
通常C/S的业务系统,都会注意输入法的控制问题。开发基于B/S的业务系统,也一定会遇到同样问题,ime-mode相信可以帮上忙。不过 FireFox 并不支持这一样式单属性。

  • 正则验证

  直接文本验证,很多人喜欢监听键盘,判断键盘编码,测试一下,有点问题,比如说搜狗中文输入,如果你打了一长串中文,最后选择数字,确定是哪个字符串。监听事件是无法监听的。我们最好的办法是监听文本,文本监听的时候最后是监听键盘弹起事件onkeyup,文本正则一定要也要全文本扫描'/g',这是很多初用正则说容易忘记的。方法如下,最简单的写法。

<input type="text" style="ime-mode:disabled"       onkeyup="this.value=this.value.replace(/[^\d]/g,'')"/>

  

  

input=text数字问题的更多相关文章

  1. RobotFramework自动化测试框架-移动手机自动化测试Input Text和Click Button关键字的使用

    Input Text和Click Button Input Text 关键字一般用来给输入框进行输入操作,该关键字接收两个参数[ locator | text ]. 示例1:启动安卓手机上一个APP的 ...

  2. input:text 的value 和 attribute('value') 不是一回事

    如题,input:text 当手工输入字符改变其值时,两者就不一样了. 要获得手工输入,不要用attribute('value'), 直接使用value: function getbyid(id){ ...

  3. jquery循环table中tbody的tr中input:text,将值进行拼接传入控制器并返回状态和描述

    引用jquery $(function(){ $("#按钮id").click(function(){ var nums="";//变量 $("#ta ...

  4. input text输完自动跳到下一个

    应用场景: 短信验证码输入 效果: input输入框,输入完以后自动跳转到下一个 思路: 四个输入框 进入聚焦到第一个输入框 第一个输入框输完一个字符后自动聚焦到下一个输入框 1.四个输入框 < ...

  5. input(Text)控件作为填空输入,但运行后,有曾经输入的记录显示,用autocomplete="off"解决

    系统中,有设计填空题,原来程序中,用input(Text)控件,   <input type="text" name="NO<%=rs("id&qu ...

  6. input submit标签的高度和宽度与input text的差异

    <input type="text"> 时设置input的高度和border,最后元素的高度和宽度包含了border的值. <input type="s ...

  7. js 获取table tr td内的select 和input text

    $("#TableList tr").each(function () {                //for (var i = 1; i <= AM_index; i ...

  8. input text 只能输入数字 js 正则表达式

    $("#txt1").keyup(function () { $(this).val($(this).val().replace(/[^0-9.]/g, '')); }).bind ...

  9. input text 只能输入数字

    添加 onkeyup="value=value.replace(/[^\d]/g,'')"

随机推荐

  1. Dom4J解析技术

    前面的话  本文主要讲解有关Dom4j技术和xpath配合下的优化!   目录:    为什么需要Dom4J    DOM4J怎么用    xpath怎么配合DOM4J 一  为什么需要Dom4J 一 ...

  2. 转VS2010解决方案转换到VS2008

      原文链接地址:http://www.codeproject.com/Tips/80953/Converting-VS2010-Solution-to-VS2008 如果你使用VS2010的任何版本 ...

  3. C和指针 第十五章 输入输出缓冲

    对于C,所有的I/O操作都只是简单的从程序移进或移出字节,这种字节流便成为流(stream),我们需要关心的只是创建正确的输出字节数据,以及正确的输入读取数据,特定的I/O设备细节都是对程序隐藏的. ...

  4. linux 安装maven

    set maven environment M2_HOME=/tool/apache-maven-3.3.9export M2_HOME  PATH=$PATH:$M2_HOME/bin  expor ...

  5. 数据库(Database)

    一.定义 1. 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,简单来说是本身可视为电子化的件柜--存储电子文件的处所,用户可以对文件中的数据进行新增.截取.更新.删除等操作.数 ...

  6. hibernate id 策略

    @Id@GeneratedValue(generator = "paymentableGenerator")@GenericGenerator(name = "payme ...

  7. C#对象先序列化然后反序列化时间丢失八小时的问题

    把对象JSON序列化,然后反序列化后发现时间少了八小时.因为在东八区,所以序列的时候按照1970-01-01:08:00:00为基数取得差值,而反序列化的时候以1970-01-01:00:00:00作 ...

  8. swing中JTable的使用方法

    public static void main(String[] args) { Student s1 = new Student("张三", "001", 0 ...

  9. Python之mmap内存映射模块(大文本处理)说明

    背景: 通常在UNIX下面处理文本文件的方法是sed.awk等shell命令,对于处理大文件受CPU,IO等因素影响,对服务器也有一定的压力.关于sed的说明可以看了解sed的工作原理,本文将介绍通过 ...

  10. apk逆向 - smali动态调试

    author: Dlive date: 2016/10/6 0x00 前言 ​ 之前有人问过smali的动态调试方法,其实网上已经有很多文章讲这些内容,但是为了方便大家学习,我还是写一下让大家少走点坑 ...