当前位置: 代码迷 >> Web前端 >> 应用jquery控制只能输入数字,并且关闭输入法
  详细解决方案

应用jquery控制只能输入数字,并且关闭输入法

热度:144   发布时间:2012-11-23 00:03:43.0
使用jquery控制只能输入数字,并且关闭输入法

控制文本框只能输入数字是一个很常见的需求,比如电话号码的输入、数量的输入等,这时候就需要我们控制文本框只能输入数字。在用js控制之后在英文输入法的状态下去敲击键盘上的非数字键是输不进去的,然而当你转到中文输入法的时候输入的是中文,再按空格或回车键,中文或英文字母就输进去了,这时候就需要我们在文本框得到焦点的时候把输入法关闭,就是不响应输入法的切换。如下语句可以实现这样的功能。

?

下面的语句是用jquery写的,控制class为checkNum的文本框只能输入数字和小数点。

//监听键盘,只允许输入数字和小数点
		$(".checkNum").keypress(function(event) {
			var keyCode = event.which;
			if (keyCode == 46 || (keyCode >= 48 && keyCode <=57) || keyCode == 8)//8是删除键
				return true;
			else
				return false;
		}).focus(function() {
			this.style.imeMode='disabled';
		});

?

imeMode有四种形式,分别是:

active 代表输入法为中文
inactive 代表输入法为英文
auto 代表打开输入法 (默认)
disable 代表关闭输入法

1 楼 yzhw 2011-08-02  
遇到过这样的问题,当初用插件解决的,以后遇到用这个试试
  相关解决方案