• js 实时监听input中值变化


    注意:用到了jquery需要引入jquery.min.js。

    需求:

    1.每个地方需要分别打分,总分为100;

    2.第一个打分总分为40;

    3.第二个打分总分为60。

    注意:需要判断null、""、isNaN()(是否是数字:如输入的是字母"a")、输入数值大小范围不能超过规定的总分;

       如果为null、""、isNaN为true、输入数值大小范围超过规定的总分则将文本框赋值为空并将input对应的数值赋值为0参与计算总分。

    文本框输入数值的时候总数会随着分数的输入而实时变化(即js实时监听input中值变化)。(实践是propertychange兼容各个浏览器,如IE、火狐、谷歌等)

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <script src="js/jquery.min.js"></script>
    <title>Insert title here</title>
    <style type="text/css">  
    
    </style>
    <script type="text/javascript">
    $(function(){
        $('input').bind('input propertychange', function() {  
            var input1 = $("#input1").val();
            var input2 = $("#input2").val();
            var result = 0;
            
              if(input1==null||input1==""){
                  input1 = parseInt(0);
              }else if(isNaN(input1)){
                  alert("请填写数字!");
                  $("#input1").val("");
                  input1 = parseInt(0);
              }else{
                  input1 = parseInt(input1);
                  if(input1>40){
                      alert("填写的分数不能超过40");
                      $("#input1").val("");
                      input1 = parseInt(0);
                  }
              }
              
              if(input2==null||input2==""){
                  input2 = parseInt(0);
              }else if(isNaN(input2)){
                  alert("请填写数字!");
                  $("#input2").val("");
                  input2 = parseInt(0);
              }else{
                  input2 = parseInt(input2);
                  if(input2>60){
                      alert("填写的分数不能超过60");
                      $("#input2").val("");
                      input2 = parseInt(0);
                  }
              }
              
              result = input1+input2;
              $("#totalScore").val(result);
        });  
          
    });
    </script>
    </head>
    <body>
    <!--  js 实时监听input中值变化  --> 
    分数1:<input id="input1" name="input1" value="">&nbsp;<span style="color: red;">(总分为40)</span><br>
    分数2:<input id="input2" name="input2" value="">&nbsp;<span style="color: red;">(总分为60)</span><br><br>&nbsp;&nbsp;分:<input id="totalScore" name="totalScore" value=""><br>    
    </body>
    </html>
  • 相关阅读:
    文档_word常用设置-操作
    Java NIO总结 整理
    Spring缓存注解@Cacheable、@CacheEvict、@CachePut使用
    Lock和synchronized比较详解
    SpringBoot如何将类中属性与配置文件中的配置进行绑定
    简述MyBatis的一级缓存、二级缓存原理
    服务器端filter解决ajax简单请求跨域访问问题
    Spring Boot异步执行程序
    程序猿和hr面试时的巅峰对决
    数据库三大范式详解(通俗易懂)
  • 原文地址:https://www.cnblogs.com/super-chao/p/6168996.html
Copyright © 2020-2023  润新知