JS限制用户只能输入数字
2015-07-14 09:51
597 查看
最近有个小需求,要求用js实现只能让用户输入0-9的数字,考虑到输入,可能有集中情况:
1、用户从键盘输入;
2、用户用鼠标右键的黏贴功能;
3、用户使用ctrl+v;
所以,需要控制用户的键盘输入、禁用黏贴功能,代码实现如下:
<html>
<head>
<title>Input Limit Demo</title>
<script type="text/javascript" src="jquery.1.4.2-min.js"></script>
<script type="text/javascript">
//方式一:原生态js实现"只允许用户输入数字"
function limitInput(ele){
var numberLimit = function(e) {
e = e || window.event;
var k = (typeof e.which == "number") ? e.which : e.keyCode;
if((k<48 || k>57) && k!=8){
return false;
}
if(e.shiftKey && k >= 48 && k <= 57) {
return false;
}
return true;
};
ele["onkeydown"] = numberLimit;
}
window.onload = function(){
var ele = document.getElementById("lmInput1");
limitInput(ele);
}
//方式二:jQuery方式实现"只允许用户输入数字"
$(document).ready(function(){
$("#lmInput2").keydown(function(e){
var k = (typeof e.which == "number") ? e.which : e.keyCode;
if((k<48 || k>57) && k!=8){
return false;
}
if(e.shiftKey && k >= 48 && k <= 57) {
return false;
}
return true;
});
});
</script>
</head>
<body>
<div>原生态实现方式:<input type="text" id="lmInput1" value="" onpaste="return false" /></div>
<div>jQuery实现方式:<input type="text" id="lmInput2" value="" onpaste="return false" /></div>
</body>
</html>
1、用户从键盘输入;
2、用户用鼠标右键的黏贴功能;
3、用户使用ctrl+v;
所以,需要控制用户的键盘输入、禁用黏贴功能,代码实现如下:
<html>
<head>
<title>Input Limit Demo</title>
<script type="text/javascript" src="jquery.1.4.2-min.js"></script>
<script type="text/javascript">
//方式一:原生态js实现"只允许用户输入数字"
function limitInput(ele){
var numberLimit = function(e) {
e = e || window.event;
var k = (typeof e.which == "number") ? e.which : e.keyCode;
if((k<48 || k>57) && k!=8){
return false;
}
if(e.shiftKey && k >= 48 && k <= 57) {
return false;
}
return true;
};
ele["onkeydown"] = numberLimit;
}
window.onload = function(){
var ele = document.getElementById("lmInput1");
limitInput(ele);
}
//方式二:jQuery方式实现"只允许用户输入数字"
$(document).ready(function(){
$("#lmInput2").keydown(function(e){
var k = (typeof e.which == "number") ? e.which : e.keyCode;
if((k<48 || k>57) && k!=8){
return false;
}
if(e.shiftKey && k >= 48 && k <= 57) {
return false;
}
return true;
});
});
</script>
</head>
<body>
<div>原生态实现方式:<input type="text" id="lmInput1" value="" onpaste="return false" /></div>
<div>jQuery实现方式:<input type="text" id="lmInput2" value="" onpaste="return false" /></div>
</body>
</html>
相关文章推荐
- onkeyup,onkeydown和onkeypress的区别介绍
- JavaScript onkeydown事件入门实例(键盘某个按键被按下)
- Android开发监听返回键返回上个网页或者fragment
- android 硬件上的back键处理
- 关于ViewPager 无法捕获onKeyDown 的解决方法
- android onKeyDown返回true与false区别
- 自定义View监听onKeyDown事件,View捕获焦点
- Android 实现点击两次BACK键退出应用
- Android TabActivity中onKeyDown无法响应的解决方法
- MFC OnChar、OnKeyDown、OnKeyUp和PreTranslateMessage的关系
- 小功能的实现记录
- Android(Java):Android中常用的代码
- TabActivity子类中处理返回键事件 推荐
- 应用退出时提示,监听OnkeyDown
- Android WebView 因重定向无法正常goBack()解决方案
- form表单回车ajax提交
- Android实现点击返回键返回桌面而不是退出程序
- Android 点击两次返回退出程序
- js限制文本框只能输入数字方法小结
- type为text的input标签的相关事件对比