前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jQuery 文本框中只能输入正整数

jQuery 文本框中只能输入正整数

原创
作者头像
IT工作者
修改2022-02-23 09:53:18
3K0
修改2022-02-23 09:53:18
举报
文章被收录于专栏:程序技术知识

文本框的输入的内容可能会有各种限制,比如文本框中只能够输入正整数。

下面就是一段能够实现此功能的代码实例,需要的可以做一下参考。

代码实例如下:

实例1

代码语言:javascript
复制
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>前端</title>
<script src="/jquery/1.9.0/jquery.js"></script>
<script>
$(document).ready(function(){
  $("input").keyup(function(){
    $(this).val($(this).val().replace(/\D|^0/g,''));
  }).bind("paste",function(){
    return false;
  })
});
</script>
</head>
<body>
<input type="text"/>
</body>
</html>

实例2

代码语言:javascript
复制
$('.skuStock').keyup(function(){
	$(this)[0].value=$(this)[0].value.replace(/^(0+)|[^\d]+/g,'')
})

实例3

代码语言:javascript
复制
//限制键盘只能按数字键、小键盘数字键、退格键
$("#txtQty").keydown(function (e) {
var code = parseInt(e.keyCode);
if (code >= 96 && code <= 105 || code >= 48 && code <= 57 || code == 8) {
return true;
} else {
return false;
}
})

//文本框输入事件,任何非正整数的输入都重置为1
$("#txtQty").bind("input propertychange", function () {
if (isNaN(parseFloat($(this).val())) || parseFloat($(this).val()) <= 0) $(this).val(1);
})

实例4

代码语言:javascript
复制
<input 
onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" 
onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
>

上面的代码实例实现了我们的要求,下面介绍一下它的实现过程。

一.代码注释:

(1).$(document).ready(function(){}),当文档结构完全加载完毕再去执行函数中的代码。

(2).$("input").keyup(function(){}),为input元素注册keyup事件处理函数。

(3).$(this).val($(this).val().replace(/\D|^0/g,''));,将非数字或者以0为开头的替换为空。

(4)$("input").bind("paste",function(){

  return false;

}),

为文本框注册paste事件处理函数,这个是为了防止对文本框复制黏贴操作。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档