JS限制文本框输入金额并保留两位小数

2024-05-05 10:38

本文主要是介绍JS限制文本框输入金额并保留两位小数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>JS限制文本框输入金额并保留两位小数</title>
<script type="text/javascript">/**
* 实时动态强制更改用户录入
* arg1 inputObject
**/
function amount(th){var regStrs = [['^0(\\d+)$', '$1'], //禁止录入整数部分两位以上,但首位为0['[^\\d\\.]+$', ''], //禁止录入任何非数字和点['\\.(\\d?)\\.+', '.$1'], //禁止录入两个以上的点['^(\\d+\\.\\d{2}).+', '$1'] //禁止录入小数点后两位以上];for(var i=0; i<regStrs.length; i++){var reg = new RegExp(regStrs[i][0]);th.value = th.value.replace(reg, regStrs[i][1]);}
}/**
* 录入完成后,输入模式失去焦点后对录入进行判断并强制更改,并对小数点进行0补全
* arg1 inputObject
**/
function overFormat(th){var v = th.value;if(v === ''){v = '0.00';}else if(v === '0'){v = '0.00';}else if(v === '0.'){v = '0.00';}else if(/^0+\d+\.?\d*.*$/.test(v)){v = v.replace(/^0+(\d+\.?\d*).*$/, '$1');v = inp.getRightPriceFormat(v).val;}else if(/^0\.\d$/.test(v)){v = v + '0';}else if(!/^\d+\.\d{2}$/.test(v)){if(/^\d+\.\d{2}.+/.test(v)){v = v.replace(/^(\d+\.\d{2}).*$/, '$1');}else if(/^\d+$/.test(v)){v = v + '.00';}else if(/^\d+\.$/.test(v)){v = v + '00';}else if(/^\d+\.\d$/.test(v)){v = v + '0';}else if(/^[^\d]+\d+\.?\d*$/.test(v)){v = v.replace(/^[^\d]+(\d+\.?\d*)$/, '$1');}else if(/\d+/.test(v)){v = v.replace(/^[^\d]*(\d+\.?\d*).*$/, '$1');ty = false;}else if(/^0+\d+\.?\d*$/.test(v)){v = v.replace(/^0+(\d+\.?\d*)$/, '$1');ty = false;}else{v = '0.00';}}th.value = v; 
}
</script>
</head>
<body>
<input type="text" name="city" value="" onKeyUp="amount(this)" onBlur="overFormat(this)" />
</body>
</html>
转载:http://blog.csdn.net/u014676619/article/details/53636819?utm_source=itdadao&utm_medium=referral

这篇关于JS限制文本框输入金额并保留两位小数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/961503

相关文章

Python实现精确小数计算的完全指南

《Python实现精确小数计算的完全指南》在金融计算、科学实验和工程领域,浮点数精度问题一直是开发者面临的重大挑战,本文将深入解析Python精确小数计算技术体系,感兴趣的小伙伴可以了解一下... 目录引言:小数精度问题的核心挑战一、浮点数精度问题分析1.1 浮点数精度陷阱1.2 浮点数误差来源二、基础解决

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

基于Python实现数字限制在指定范围内的五种方式

《基于Python实现数字限制在指定范围内的五种方式》在编程中,数字范围限制是常见需求,无论是游戏开发中的角色属性值、金融计算中的利率调整,还是传感器数据处理中的异常值过滤,都需要将数字控制在合理范围... 目录引言一、基础条件判断法二、数学运算巧解法三、装饰器模式法四、自定义类封装法五、NumPy数组处理

go动态限制并发数量的实现示例

《go动态限制并发数量的实现示例》本文主要介绍了Go并发控制方法,通过带缓冲通道和第三方库实现并发数量限制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录带有缓冲大小的通道使用第三方库其他控制并发的方法因为go从语言层面支持并发,所以面试百分百会问到

全面解析MySQL索引长度限制问题与解决方案

《全面解析MySQL索引长度限制问题与解决方案》MySQL对索引长度设限是为了保持高效的数据检索性能,这个限制不是MySQL的缺陷,而是数据库设计中的权衡结果,下面我们就来看看如何解决这一问题吧... 目录引言:为什么会有索引键长度问题?一、问题根源深度解析mysql索引长度限制原理实际场景示例二、五大解决

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析

使用Python获取JS加载的数据的多种实现方法

《使用Python获取JS加载的数据的多种实现方法》在当今的互联网时代,网页数据的动态加载已经成为一种常见的技术手段,许多现代网站通过JavaScript(JS)动态加载内容,这使得传统的静态网页爬取... 目录引言一、动态 网页与js加载数据的原理二、python爬取JS加载数据的方法(一)分析网络请求1

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文