首页 > 其他分享 >js 数字格式化,只能输入正负整数,小数

js 数字格式化,只能输入正负整数,小数

时间:2023-07-03 10:44:30浏览次数:39  
标签:格式化 数字 len replace num 正负 js 小数

 

1、只能输入正整数
<input name="columnValue" class="input96 required" type="text" size="50" 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,'')}"/>

2、可输入正负数和小数,并限制多少位小数(四舍五入)

js:

function NumberCheck(num,len) {
    //得到第一个字符是否为负号
    var t = num.charAt(0); 
    //先把非数字的都替换掉,除了数字和. 
    num = num.replace(/[^\d\.]/g,''); 
    //必须保证第一个为数字而不是. 
    num = num.replace(/^\./g,''); 
    //保证只有出现一个.而没有多个. 
    num = num.replace(/\.{2,}/g,'.'); 
    //保证.只出现一次,而不能出现两次以上 
    num = num.replace('.','$#$').replace(/\./g,'').replace('$#$','.');
    //保留小数
    if(len < 0) len = 0;
    num = Number(num).toFixed(len);
    //如果第一位是负号,则允许添加
    if(t == '-'){
        num = '-'+num;
    }
    return num;
}

jsp:

<s:elseif test="'整数'==dataType">
    <input name="columnValue" class="input96 required" type="text" size="50" onblur="this.value=NumberCheck(this.value,0)"/>
</s:elseif>
<s:elseif test="'小数'==dataType">
    <input name="columnValue" class="input96 required" type="text" size="50" onblur="this.value=NumberCheck(this.value,4)" />
</s:elseif>

 

 

标签:格式化,数字,len,replace,num,正负,js,小数
From: https://www.cnblogs.com/xikui/p/17522155.html

相关文章

  • JS(DOM)
    一WebAPIs和JS基础关联性1.1JS的组成1.2JS基础阶段以及WebAPIs阶段JS基础学习ECMAScript基础语法为后面作铺垫,WebAPIs是JS的应用,大量使用JS基础语法做交互效果二API和WebAPI2.1APIAPI(ApplicationProgrammingInterface,应用程序编程接口)是一......
  • 如何在AutoCAD中快速将矢量数据导出到shp、mdb、kml、geojson、gpx文件?
    在AutoCAD中借助GIS4CAD插件能为您提供便捷的矢量数据导出功能,不论是shp、mdb、kml、geojson还是gpx等矢量文件格式都能轻松导出。方法/步骤下载并安装GIS4CAD插件http://www.geosaas.com/download/gis4cad.exe 下载并安装GIS4CAD插件,安装成功后在AutoCAD菜单栏的最后会......
  • 如何在AutoCAD中加载shp、mdb、kml、geojson、gpx等矢量数据?
    在AutoCAD中加载矢量数据是一个非常有用的功能,它可以帮助用户将多种不同格式的数据集合在一个平台上进行分析和编辑。按照以下步骤可快速在AutoCAD中加载shp、mdb、kml、geojson、gpx等矢量数据。方法/步骤下载并安装GIS4CAD插件http://www.geosaas.com/download/gis4cad.e......
  • [GPT] nodejs 有哪些类似 jquery 语法的 html 解析库
     在Node.js中,有一些类似jQuery语法的HTML解析库可供选择。 以下是其中几个常用的库:1.Cheerio:Cheerio是一个快速、灵活且易于使用的HTML解析库,它提供了类似于jQuery的语法和API。你可以使用Cheerio来在Node.js中解析和操作HTML文档。 2.jsdom:jsdom是一个基于Node.......
  • [GPT] 网页中某些dom内容是通过 js 数据异步渲染的,nodejs 怎么获取网页解析这些数据
     要处理使用JavaScript异步渲染内容的网页,您可以在JavaScript蜘蛛中使用Puppeter或Playwright等无头浏览器来获取网页,然后与动态渲染的内容进行交互。 下面是一个使用Puppeteer的例子:constpuppeteer=require('puppeteer');(async()=>{//Launchaheadles......
  • ObjectMapper向前端响应json数据,将java对象与json字符串互相转换
    向前端直接返回json数据,使用ObjectMapper ObjectMapper是Jackson提供的一个类,作用是将java对象与json字符串相互转化。依赖:<dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId>......
  • Node.js 从前端到全栈的艰难历程
    Node.js从前端到全栈的艰难历程Node.js是一个基于ChromeV8引擎的JavaScript运行环境,它可以在服务器端运行JavaScript代码,使得JavaScript不再仅限于浏览器中的客户端脚本语言,而可以成为一种全栈语言。Node.js的历史Node.js的诞生可以追溯到2009年,当时RyanDahl在J......
  • Node js安装及配置
    下载安装https://nodejs.org/en/download/releases找到对应版本下载例如node-v16.20.1-x64.msi下一步下一步完成win+rcmd键入node-vnpm-v环境变量配置说明:这里的环境配置主要配置的是npm安装的全局模块所在的路径,以及缓存cache的路径,之所以要配置,是因为以后在执行......
  • print-js 实现页面打印PDF,与样式缺失问题
    参考https://blog.csdn.net/qq_36990322/article/details/105786298(样式继承问题)https://blog.csdn.net/qq_42571665/article/details/127277049(宽度配置)说明样式缺失是因为默认不继承样式。环境软件/系统版本说明dayjs^1.6.0步骤安装yarnaddprin......
  • dayjs 实现秒转时分秒格式。
    参考https://dayjs.fenxianglu.cn/chatgpt回答环境软件/系统版本说明dayjs^1.11.9步骤安装yarnadddayjs引入//vardayjs=require('dayjs')importdayjsfrom'dayjs'//时间插件importdurationfrom'dayjs/plugin/duration'd......