CODE(text in IE6,IE9, Mac,Google Crome):
$(function(){
$("#<%=txtItem.ClientID %>").keydown(function(e){// 注意此处不要用keypress方法,否则不能禁用 Ctrl+V 与 Ctrl+V,具体原因请自行查找keyPress与keyDown区分,十分重要,请细查
if ($.browser.msie) { // 判断浏览器
if ( ((event.keyCode > 47) && (event.keyCode < 58)) || (event.keyCode == 8) ) { // 判断键值
return true;
} else { return false; } } else { if ( ((e.which > 47) && (e.which < 58)) || (e.which == 8) || (event.keyCode == 17) ) { return true; } else { return false; } }}).focus(function() { this.style.imeMode='disabled'; // 禁用输入法,禁止输入中文字符});
});
// 备注:
// imeMode有四种形式,分别是:// active 代表输入法为中文// inactive 代表输入法为英文// auto 代表打开输入法 (默认)// disable 代表关闭输入法
同事收藏的做法:
1.正则表达式限制Float:(^[0-9]([.][0-9]{1,2})?$)|(^1[0-9]([.][0-9]{1,2})?$)|(^2[0-3]([.][0-9]{1,2})?$)|(^24([.]0{1,2})?$)2.限制输入function KeyPress(objTR) {//只允许录入数据字符 0-9 和小数点
//var objTR = element.document.activeElement; var txtval = objTR.value; var key = event.keyCode; if ((key < 48 || key > 57) && key != 46) { event.keyCode = 0; alert("只能输入数字"); } else { if (key == 46) { if (txtval.indexOf(".") != -1 || txtval.length == 0) event.keyCode = 0; } } }3.禁止切换输入法
Style: "ime-mode: disabled"