vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue 输入框输入返回数字

vue 输入框输入任意内容返回数字的实现

作者:前端酱紫

本文主要介绍了vue 输入框输入任意内容返回数字的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文主要介绍了vue 输入框输入任意内容返回数字,具体如下:

输入任意内容只返回数字

// 提取数字 传入数字
export function changeEvent(item) {
	let nums = item + "";
	if (nums === "") {
		nums = ""; // 空的话 直接返回空
	} else {
		nums = nums.replace(/[^\d|\.]/g, ""); // 提取出来 一定是数字
		if (nums.includes(".")) {
			// 包含小数点
			let strL = nums.substring(0, nums.indexOf("."));
			let strR = nums.substring(nums.indexOf(".") + 1);
			nums = strL + "." + strR;
		}
		// else {
		// 	// 不包含小数点
		// 	nums = nums.replace(/[^\d|\.]/g, ""); // 提取出来 一定是数字
		// }
	}
	return nums;
}

// 离开输入事件 
export function blurEvent(x, y) {
	if (x === "") {
		y.manualScore = "";
	} else {
		x = x + "";
		let nums;
		if (x.includes(".")) {
			// 包含小数点
			nums = x.replace(/[^\d|\.]/g, ""); // 提取出来 一定是数字
			let strL = nums.substring(0, nums.indexOf("."));
			let strR = nums.substring(nums.indexOf(".") + 1);
			strR = strR.replace(/\./gi, ""); // 去除多余小数点
			if (strL === "" && strR === "") {
				nums = "0"; // 有小数点,但左侧右侧都为空 默认为0
			} else if (strL === "" && strR !== "") {
				// 左侧为空 右侧不为空 小数
				nums = "0." + strR;
			} else if (strL !== "" && strR === "") {
				// 右侧为空 左侧不为空 整数
				nums = strL;
			} else if (strL !== "" && strR !== "") {
				nums = strL + "." + strR;
			}
		} else {
			nums = x.replace(/[^\d|\.]/g, ""); // 提取出来 一定是数字
		}
		let z = nums * 1 || "";
		z = z < 0 ? 0 : z;
		y.manualScore = z;
	}
	console.log("x", x, "y:", y);
}

在这里插入图片描述

 到此这篇关于vue 输入框输入任意内容返回数字的实现的文章就介绍到这了,更多相关vue 输入框输入返回数字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文