第一步:自定义组件MyNumberInput.vue
export default {
props: {
point: {
default: 0
},
max: Number,
placeholder: String,
value: {
default: null
},
},
computed: {
inputData: {
get:function() {
return this.value;
},
set:function (value) {
let val = this.$el.value;
let len = val.length;
// 若输入08,变为8
if(len===2 && val.charAt(0)===0 && val.charAt(1)!=='.'){
this.$el.value = val.charAt(1);
this.setParentModeVal(this.$el.value);
return;
}
// 禁止输入多个小数点
if(Math.abs(this.value) > 0 && val==='' && value ===''){
if(this.keyDownDel){
this.$el.value = '';
}else {
this.$el.value = this.value;
}
this.setParentModeVal(this.$el.value);
return ;
}
// 处理输入“点、e、+、-等被识别为数字字符
if(this.value === '' && val === '' && value === ''){ //字母类非数字输入都为'';
this.$el.value = '';
this.setParentModeVal('');
return ;
}
// 保留小数
if(val){
let pointIndex = val.indexOf('.');
if(this.point===0 && pointIndex!== -1){
this.$el.value = val.substr(0, pointIndex);
this.setParentModeVal(this.$el.value);
return ;
}
if(pointIndex>0 && (len - pointIndex)>(this.point+1)){
this.$el.value = val.substr(0,pointIndex + this.point +1);
this.setParentModeVal(this.$el.value);
return ;
}
}
// 最大值
if(this.max>0 && val>this.max){
this.$el.value = val.substr(0,len-1);
this.setParentModeVal(this.$el.value);
return;
}
this.setParentModeVal(val);
return;
}
}
},
data() {
return {
keyDownDel: false,// 判断键盘输入值
}
},
methods: {
setParentModeVal(value){
this.$emit('input', value);
},
keydownFn(event){
let e = event || window.event;
if(e.keyCode===8||e.keyCode===46){ //Backspace || Delete
this.keyDownDel = true;
}else {
this.keyDownDel = false;
}
}
},
}
第二步:引入,注册
第三步:使用
vue input框数字后保留两位小数正则
数字千分位处理,number.js,js保留两位,整数强制保留两位小数
杨龙飞 杨龙飞 杨龙飞 杨龙飞 杨龙飞 杨龙飞 官方文档:/articles/14/jquery-number-format-redux 1.千分位 $. ...
JS限制input输入的为数字并且有小数的时候最多保留两位小数
JS限制input用户输入的为数字并且有小数的时候最多保留两位小数,代码如下: html部分:
ToString()格式和用法大全,C#实现保留两位小数的方法
C,货币,2.5.ToString("C"),¥2.50.D,十进制数,25.ToString("D5"),00025.E,科学型,25000.ToString ...
[Java]求文件大小并保留两位小数(文件大小是一个长整型数单位是Byte)
前言 为了获得一堆apk的大小,并与人类友好方式显示.本来是打算用以下方法,到时不能具体到保留两位小数. mons.io.FileUtils.byteCountToDisp ...
js保留两位小数方法总结
js保留两位小数方法总结 最近在做结算系统,经常需要用到金额保留两位小数,刚开始我一直用的是Angular中的过滤器number |2,但是,这无法满足我的需求.问题是,当用户离开文本框时,我需要将用 ...
jQuery EasyUI/TopJUI基本的数字输入框(保留两位小数,带前缀后缀...)
jQuery EasyUI/TopJUI基本的数字输入框(保留两位小数,带前缀后缀...) numberbox(数值输入框) HTML required:必填字段,默认为false:prompt:显示 ...
随机推荐
如何在Web引用中使用项目自定义的类
这个是老架构了,不推荐现在这么用,维护一个老项目记录一下. 项目中WebService和客户端是在一个解决方案下,实体类是一个公用的Project,如果使用Web引用自动生成的类会缺少一些实体类定义的 ...
Andrew Ng机器学习公开课笔记 -- Regularization and Model Selection
网易公开课,第10,11课 notes,http://cs229.stanford.edu/notes/cs229-notes5.pdf Model Selection 首先需要解决的问题是,模型 ...
HighCharts之2D柱状图
1.HighCharts之2D柱状图源码 column.html: html>
Linux perf tools
//08/netflix-at-velocity--linux.html
ubuntu 快捷键和安装知识知识
本文节选自“The Official Ubuntu Book, 7th Edition.pdf” 快捷键部分直接引用原书中图片. Linux Folders Learning Unity Keyboa ...
SpringMVC归纳-1(model数据模型与重定向传参技术)
要点: model是一个Map结构的数据模型,能重定向时传递数据(拼接URL),但不安全,主要用于渲染前端页面,配合Thymeleaf填充html里面里设置好的参数. @RequestParam用来获 ...
怎样从本地删除git远程仓库里面的文件
git是大家通用的一种版本控制系统,便捷高效,各种命令需要牢记,今天小渔介绍给大家的是git的删除命令,即将文件从远程仓库中删除的操作. 方法/步骤 首先,我们打开自己的本地GIT仓库,在根目 ...
Win10系列:JavaScript综合实例1
上面几个小节讲解了使用HTML5和JavaScript语言开发Windows 应用商店应用时会用到的一些技术,本小节将前面介绍的知识融合在一起创建一个菜谱应用程序,帮助读者更进一步地理解和掌握这些知识 ...