`
ganglong99
  • 浏览: 162067 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

JS控制只能往输入框中输入数字

阅读更多
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">

<SCRIPT LANGUAGE="JavaScript">
<!--
function keyPress() {
	var keyCode = event.keyCode;
	if ((keyCode >= 48 && keyCode <= 57))
	{
		event.returnValue = true;
	} else {
		event.returnValue = false;
	}
}
//-->
</SCRIPT>
</HEAD>

<BODY>
<INPUT TYPE="text" NAME="pName" onkeypress="keyPress()">
</BODY>
</HTML>

 

注意,这里是捕捉的onkeypress事件,而不是捕捉的onkeydown事件,如果是捕捉onkeydown事件,则这里就要修改if判断语句。 

分享到:
评论
14 楼 jaychang 2011-01-17  
对于 负号,小数点未作处理,还可以做保留两位小数点,有待好好改进哦
13 楼 jimoshutong 2010-08-27  
还是正则验证一下的比较好吧!复制、粘贴也要验证的。
12 楼 s79 2010-02-26  
选定并拖拽部分文本到该输入框怎么办?
现在做这类限制,包括TEXTAREA的长度限制,都在表单提交时统一检查比较好。
11 楼 matychen 2010-02-26  
<input type="text" name="fmoney" id="fmoney" onKeyUp="value=value.replace(/[^\d-]/g,'')" style="width: 65px;"/>
10 楼 luobin23628 2010-02-24  
终于解决了
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
<HTML>  
<HEAD>  
<TITLE> New Document </TITLE>  
<META NAME="Generator" CONTENT="EditPlus">  
<META NAME="Author" CONTENT="">  
<META NAME="Keywords" CONTENT="">  
<META NAME="Description" CONTENT="">  
  
<SCRIPT LANGUAGE="JavaScript">  
<!--   
function keyPress() {   
    var keyCode = event.keyCode;   
    if ((keyCode >= 48 && keyCode <= 57))   
    {   
        event.returnValue = true;   
    } else {   
        event.returnValue = false;   
    }   
}   
//-->  
</SCRIPT>  
</HEAD>  
  
<BODY>  
<INPUT TYPE="text" NAME="pName" style="ime-mode:disabled;" onpaste="return false;" onkeypress="keyPress()">  
</BODY>  
</HTML>  

style="ime-mode:disabled;"不让用户修改输入法即可
学习了
9 楼 luobin23628 2010-02-24  
caiying0504 写道
这个方法不太完善
如果使用中文输入,再回车或空格,文字或者字母还是可以输进去
<INPUT onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">--不能输入空格,按键弹起触发验证

这种方式比较直接


可以改成
<INPUT onkeyup="this.value=this.value.replace(/\D/g,'')" 
onblur="this.value=this.value.replace(/\D/g,'')"
onafterpaste="this.value=this.value.replace(/\D/g,'')">--不能输入空格,按键弹起触发验证

8 楼 luobin23628 2010-02-24  
修改了下
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">  
<HTML>  
<HEAD>  
<TITLE> New Document </TITLE>  
<META NAME="Generator" CONTENT="EditPlus">  
<META NAME="Author" CONTENT="">  
<META NAME="Keywords" CONTENT="">  
<META NAME="Description" CONTENT="">  
  
<SCRIPT LANGUAGE="JavaScript">  
function keyDown() {   
    var keyCode = event.keyCode;   
    if ((keyCode >= 48 && keyCode <= 57||keyCode==8))   
    {   
        event.returnValue = true;   
    } else {   
        event.returnValue = false;   
    }   
}   
</SCRIPT>  
</HEAD>  
  
<BODY>  
<INPUT TYPE="text" NAME="pName" onkeydown="keyDown()" onpaste="return false;">  
</BODY>  
</HTML> 
 


但是中文大写锁定时不能输入数字
不支持小键盘
7 楼 ganglong99 2010-02-09  
nami 写道
caiying0504 写道
这个方法不太完善
如果使用中文输入,再回车或空格,文字或者字母还是可以输进去
<INPUT onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">--不能输入空格,按键弹起触发验证

这种方式比较直接


按住一个字母,再按tab键,还是可以输入字符。

呵呵,确实不够完善,谢谢提醒!
6 楼 nami 2010-01-30  
caiying0504 写道
这个方法不太完善
如果使用中文输入,再回车或空格,文字或者字母还是可以输进去
<INPUT onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">--不能输入空格,按键弹起触发验证

这种方式比较直接


按住一个字母,再按tab键,还是可以输入字符。
5 楼 longshao_feng 2010-01-29  
我试了,怎么没有效果?
楼主解决了么?
4 楼 caiying0504 2010-01-27  
这个方法不太完善
如果使用中文输入,再回车或空格,文字或者字母还是可以输进去
<INPUT onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">--不能输入空格,按键弹起触发验证

这种方式比较直接

3 楼 andy_zm 2010-01-27  
var myEvent = event || window.event;
var keyCode = myEvent.keyCode;

兼容性更好一点...
2 楼 ganglong99 2010-01-27  
xyztony1985 写道
比较喜欢不用if判断。
function keyPress() {   
    var keyCode = event.keyCode;
	event.returnValue = ((keyCode >= 48 && keyCode <= 57));   
}   


呵呵,效果一样!
1 楼 xyztony1985 2010-01-21  
比较喜欢不用if判断。
function keyPress() {   
    var keyCode = event.keyCode;
	event.returnValue = ((keyCode >= 48 && keyCode <= 57));   
}   

相关推荐

    只能输入数字的输入框.rar

    请输入数字,只能输入数字哦:&lt;input "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"&gt;

    输入框只能输入0.5的倍数

    标题“输入框只能输入0.5的倍数”所涉及的知识点主要集中在前端表单验证和数字格式化上。在Web开发中,我们经常需要对用户输入的数据进行约束,确保其符合特定的业务规则,例如这里提到的输入值必须是0.5的倍数。...

    只能输入字母和数字的输入框.rar

    请输入数字或字母:&lt;input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData ('text').replace(/[^\d]/g,''))"&gt;

    js限制输入框只能输入数字(onkeyup触发)

    ### 知识点:使用JavaScript限制输入框只能输入数字 #### 概述 本文介绍了如何利用JavaScript实现仅允许用户在输入框中输入数字的功能。这一需求在各种基于Web的表单验证中非常常见,例如在填写电话号码、身份证...

    js正则表达式限制文本框只能输入数字,能输小数点.

    ### 正则表达式在JavaScript中的应用:限制文本框只能输入数字及小数点 在Web开发中,经常需要对用户输入的数据进行合法性验证。为了确保数据格式正确且符合预期,开发者通常会在前端使用JavaScript结合HTML来实现...

    JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】

    本文实例讲述了JavaScript控制输入框中只能输入中文、数字和英文的方法。分享给大家供大家参考,具体如下: 1、问题背景: 遇到这样一个问题:有一个输入框,要求只能输入中文、数字和英文(即过滤特殊字符串) 2、...

    js控制文本框只能输入正整数和逗号

    ### JavaScript 控制文本框只能输入正整数和逗号 在Web开发中,为了提高用户体验并确保数据的有效性,我们经常需要对用户输入的数据进行验证。例如,在某些场景下,可能需要用户仅能输入正整数和逗号,以便于后续...

    输入框输入数字和小数点后两位

    这个是最直观的网页中常用的js判断输入框输入数字+小数点后两位(可以方便的更改为n位),不同于网上大部分的js判断方式,兼容ie,ff,chrome等多个常用浏览器,上传文件是一静态页面,更适合初学者的使用和更换,...

    文本框只能输入 数字,小数点,减号 字符的正则表达式

    总结来说,限制文本框只能输入数字、小数点和减号的正则表达式是`^[-+]?[0-9]*\.?[0-9]+$`,它结合了字符集、量词和否定前瞻断言,确保了用户输入的合法性。这种技术在开发中广泛应用,能够提高数据质量,防止因用户...

    input框只能输入数字和一个小数点

    限制input框只能输入数字和一个小数点的需求,在实际项目中相当常见。通过合理利用HTML的`&lt;input&gt;`元素类型,结合JavaScript的事件监听和正则表达式,可以有效地实现这一目标。同时,深入理解DOM操作和事件处理机制...

    只能输入数字小数点负号正则

    1. **多次小数点问题:** 在实际应用中,还需要注意处理多个小数点的情况,通常一个数字中只能包含一个小数点。可以通过改进正则表达式来解决这个问题,例如: ```javascript onkeyup="this.value=this.value....

    js完美解决jsp文本框限制只能输入数字、小数问题

    ### js完美解决JSP文本框限制只能输入数字、小数问题 在Web开发过程中,确保用户输入的数据符合预期格式是一项非常重要的任务。特别是在涉及到数值输入时,开发者常常需要限制文本框仅能接受数字或者带有一定数量...

    只能输入数字的输入框特效代码

    在IT领域,尤其是在前端开发中,创建一个只能输入数字的输入框特效是常见的需求,它通常用于例如电话号码、身份证号或价格等需要用户输入数值的场景。这种特效的实现涉及HTML、CSS以及JavaScript(或者jQuery)技术...

    vue.js实现只能输入数字的输入框

    在上述文档中,详细介绍了如何在Vue.js中实现只能输入数字的输入框,提供了示例代码,并讨论了一些相关的问题和解决方案。 首先,实现一个简单的只能输入数字的输入框可以通过在Vue实例的`watch`属性中监听输入数据...

    js中只输入数字的输入框

    在JavaScript中,如果想要创建一个只能输入数字的文本框,通常我们会利用HTML的元素结合客户端验证。这种文本框可以设置type="text"属性,使其默认只接受整数或小数。文字描述可以这样表达: “这是一个专为输入...

    jquery控制input只能输入数字和小数点,并且只能有一个小数点,小数点前第一位不能为0

    本资源可以满足金额有关的一些input框输入,只能输入类似10.001的数据,并且小数点前第一位不能是0,我使用这个是为了管理后台做版本控制,我们只需要1.11这种格式的版本号

    输入textbox控件只能输入数字

    标题"输入textbox控件只能输入数字"所描述的问题就是如何在TextBox控件中实现这个功能,确保用户只能输入数字,防止输入其他字符,这在诸如数据录入、年龄验证等场景中尤为常见。 要实现这一目标,开发者可以采用...

    JS控制只能输入数字并且最多允许小数点两位

    在网页设计中,控制用户输入是一种常见的需求,特别是在需要用户输入数字的场景下,如何限制输入框只接受数字,并且最多允许小数点两位,这需要对用户输入进行即时的验证和处理。 在给定的文件中,介绍了如何使用...

Global site tag (gtag.js) - Google Analytics