vue 限制input只能输入正数的操作


Posted in Javascript onAugust 05, 2020

在某些项目中 input 框只能输入数字,可以用以下办法:

先在标签上绑定上 @input 事件来监听标签的值变化,通过正则来改变输入的值。

<input
  class="keep_input"
  v-number-only
  style="width:35px"
  v-model="scope.row.fileOrder"
  @input="scope.row.fileOrder = Number($event.target.value.replace(/\D+/, ''))"
 />

第二部封装个自定义指令放在标签上!

directives: {
  numberOnly: {
   bind: function(el) {
    el.handler = function() {
     el.value = Number(el.value.replace(/\D+/, ''))
    }
    el.addEventListener('input', el.handler)
   },
   unbind: function(el) {
    el.removeEventListener('input', el.handler)
   }
  }
 },

接下来就可以去页面看效果了,只能输入数字且只是正数!

附上 element 的 input 样式代码

.keep_input {
  -webkit-appearance: none;
  background-color: #fff;
  background-image: none;
  border-radius: 4px;
  border: 1px solid #dcdfe6;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #606266;
  display: inline-block;
  font-size: inherit;
  outline: 0;
  padding: 0 15px;
  -webkit-transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  height: 30px;
  line-height: 30px;
  text-align: left;
 }
 .keep_input:focus {
  border-color: #54a6de;
  outline: 0;
 }

补充知识:记录el-input type=number限制长度el-input使用

如下所示:

<el-input type="number"
 oninput="if(value.length>10)value=value.slice(0,10)"
 @keyup.enter.native="query()"
 onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
 :max="99999999">
 </el-input>

oninput 是个自定义事件 在事件里面获取输入的数字长度,来进行判断如果大于规定长度就进行剪切。

keyup.enter.native 是个键盘回车事件,当按下Enter键时触发query()事件。

max为输入框的最大值,如果input的type=number那么输入框内是输入不了字符的。

number框 解决输入e的问题

主要原因是:e在数学上代表的是无理数,是一个无限不循环的小数,其值约为2.7182818284,所以在输入e的时候,输入框会把e当成一个数字看待。

可以采用下面的方式来避免这个BUG,在input标签中添加如下属性:

onKeypress=“return(/[\d.]/.test(String.fromCharCode(event.keyCode)))”

<el-input placeholder="请输入密码" v-model="input" :show-password="true"></el-input>

show-password 加上这个属性输入字符进行隐藏一般用于密码框使用

记录问题!

以上这篇vue 限制input只能输入正数的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery弹出层插件简化版代码下载
Oct 16 Javascript
有效的捕获JavaScript焦点的方法小结
Oct 08 Javascript
JS获取地址栏参数的小例子
Aug 23 Javascript
跟我学Node.js(四)---Node.js的模块载入方式与机制
Jun 04 Javascript
深入理解jQuery之事件移除
Jun 02 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
Sep 17 Javascript
Angularjs单选改为多选的开发过程及问题解析
Feb 17 Javascript
微信小程序 聊天室简单实现
Apr 19 Javascript
JavaScript实现的简单Tab点击切换功能示例
Jul 06 Javascript
Bootstrap Table实现定时刷新数据的方法
Aug 13 Javascript
JavaScript实现身份证验证代码实例
Aug 26 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
Sep 04 Javascript
vue:el-input输入时限制输入的类型操作
Aug 05 #Javascript
vue data变量相互赋值后被实时同步的解决步骤
Aug 05 #Javascript
Vue执行方法,方法获取data值,设置data值,方法传值操作
Aug 05 #Javascript
vue 需求 data中的数据之间的调用操作
Aug 05 #Javascript
js实现简单选项卡制作
Aug 05 #Javascript
vue 内联样式style中的background用法说明
Aug 05 #Javascript
vue flex 布局实现div均分自动换行的示例代码
Aug 05 #Javascript
You might like
PHP4中session登录页面的应用
2008/07/25 PHP
在yii中新增一个用户验证的方法详解
2013/06/20 PHP
php图片的二进制转换实现方法
2014/12/15 PHP
List the UTC Time on a Computer
2007/06/11 Javascript
javascript 获取元素位置的快速方法 getBoundingClientRect()
2009/11/26 Javascript
JavaScript中的数组操作介绍
2014/12/30 Javascript
jQuery拖拽排序插件制作拖拽排序效果(附源码下载)
2016/02/23 Javascript
JavaScript 数组some()和filter()的用法及区别
2016/05/20 Javascript
Node.js中process模块常用的属性和方法
2016/12/13 Javascript
jQuery实现简单弹窗遮罩效果
2017/02/27 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
React实践之Tree组件的使用方法
2017/09/30 Javascript
jQuery实现通过方向键控制div块上下左右移动的方法【测试可用】
2018/04/26 jQuery
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
使用NestJS开发Node.js应用的方法
2018/12/03 Javascript
layui表单验证select下拉框实现验证的方法
2019/09/05 Javascript
jquery 时间戳转日期过程详解
2019/10/12 jQuery
原生JS利用transform实现banner的无限滚动示例代码
2020/06/15 Javascript
Python自然语言处理 NLTK 库用法入门教程【经典】
2018/06/26 Python
在Python中COM口的调用方法
2019/07/03 Python
Django forms表单 select下拉框的传值实例
2019/07/19 Python
wxPython窗体拆分布局基础组件
2019/11/19 Python
django跳转页面传参的实现
2020/09/17 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
深入CSS3 动画效果的总结详解
2013/05/09 HTML / CSS
艺术学院毕业生自我评价
2014/03/02 职场文书
《忆江南》教学反思
2014/04/07 职场文书
大学英语专业求职信
2014/06/21 职场文书
法人代表证明书格式
2014/10/01 职场文书
丽江古城导游词
2015/02/03 职场文书
法院个人总结
2015/03/03 职场文书
初中物理教学反思
2016/02/19 职场文书
Pytest allure 命令行参数的使用
2021/04/18 Python
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python
Android RecyclerView实现九宫格效果
2022/06/28 Java/Android
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python