zoukankan      html  css  js  c++  java
  • js控制百分比不能超过100%;且小数点后保留两位小数

    项目中遇到input文本框输入百分比例,要求不能超过100%,且最多只能保留两位小数。下边是封装好的一个简单的方法

    <!DOCTYPE html>
    <html lang="zh">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <meta http-equiv="X-UA-Compatible" content="ie=edge" />
        <title>百分比方法</title>
    </head>
    <body>
        只能输入数字和小数点的文本框:<input name="input1" onkeyup="checkIsPreset(this)">
    <script language="JavaScript" type="text/javascript">
    function checkIsPreset(obj){
      obj.value = obj.value.replace(/[^d.]/g,""); //清除“数字”和“.”以外的字符
      obj.value = obj.value.replace(/^./g,""); //验证第一个字符是数字而不是.
      obj.value = obj.value.replace(/.{2,}/g,"."); //只保留第一个. 清除多余的.
      obj.value = obj.value.replace(".","$#$").replace(/./g,"").replace("$#$",".");
      //判断百分比不能超过100%
      if(obj.value>=100){
          alert("分红比例不能大于等于100");
          obj.value ="";
          return;
      };
      //如果有小数点,判断 只能保留两位
      if(obj.value.indexOf(".")>-1){
          if(obj.value.split(".")[1].length>2){
              alert("小数点后只能保留两位");
              obj.value ="";
              return;
          }
      }
    }
    
    </script>
    </body>
    </html>
  • 相关阅读:
    css自适应宽高等腰梯形
    控制台屏蔽某console的输出
    js定时器的时间最小值-setTimeout、setInterval
    03_数字的字面量
    程序员-表情包
    程序员-趣图集
    js不是从上到下执行的吗?
    CSS样式重置
    系统程序名命令表
    js手风琴图片切换实现原理及函数分析
  • 原文地址:https://www.cnblogs.com/TigerZhang-home/p/9049831.html
Copyright © 2011-2022 走看看