zoukankan      html  css  js  c++  java
  • j2ee-JSP之简单计算器

    来源韩顺平.j2ee视频实战教程jsp第1讲(下集)(提交,处理显示不在同一页面)

    ---------------------------------------------------------------------------------------------------

    简单计算器,可以控制输入的数(仅第一个数)不能为空且不能为字符串

    myCal.jsp代码

     1 <!--这是计算器的界面 -->
     2 <!-- 可以控制输入的数不能为空且不能为字符串 -->
     3 <%@ page contentType="Text/html;charset=gb2312" %>
     4 <html>
     5 
     6   <h1>我的计算器</h1>
     7   <hr>
     8   <head>
     9   <!-- 在jsp中添加代码,防止用户空提交 -->
    10   <script language="javascript">
    11   <!--
    12   //写一个函数验证用户是不是空提交
    13   function checkNum(){
    14   //判断num1,是不是空的
    15   if(form1.num1.value ==""){
    16       window.alert("num1不能为空!!!");//弹出一个对话框
    17       return false;
    18   
    19   }
    20   //判断num1是不是一个数
    21   if(Math.round(form1.num1.value)!=form1.num1.value){
    22        window.alert("num不是一个数!!!");//弹出一个对话框
    23        return false;
    24   }
    25   
    26   
    27   }
    28   -->
    29   
    30   </script>
    31   </head>
    32   
    33   <body>
    34     <form name="form1" action="myResult.jsp">
    35            请输入第一个数:<input type="text" name="num1"><br>
    36     <select name="flag">
    37     
    38     <option  value=+>+</option>
    39     <option  value=->-</option>
    40     <option  value=*>*</option>
    41     <option  value=/>/</option>
    42     </select><br>
    43           请输入第二个数:<input type="text" name="num2"><br>
    44      <input type="submit" value="计算" onclick="return checkNum()">
    45           
    46 </form>
    47 <hr>
    48 </body>
    49 </html>
    View Code

    myResult.jsp代码

     1 <%@ page contentType="Text/html;charset=gb2312" %>
     2 <html>
     3   <body>
     4   <%
     5   //接受到第一个数
     6    String s_num1=request.getParameter("num1");
     7   //接受第二个数
     8    String s_num2=request.getParameter("num2");
     9   //接受运算符号
    10    String flag = request.getParameter("flag");
    11   int num1=0;
    12   int num2=0;
    13   int result=0;
    14   //java中 String -> int
    15   num1=Integer.parseInt(s_num1);
    16   num2=Integer.parseInt(s_num2);   
    17   //计算
    18   if(flag.equals("+")){
    19   //
    20   result =num1+num2; 
    21   }else if(flag.equals("-")){
    22     result =num1-num2; 
    23   //
    24   }else if(flag.equals("*")){
    25     result =num1*num2;
    26   //
    27   }else{
    28     result =num1/num2; 
    29   //
    30   }
    31   //输出结果
    32  out.println("结果是:"+result); 
    33    %>
    34    
    35   </body>
    36 </html>
    View Code

    界面效果:

         

      

    ---------------------------------------------------------------------------------------------------------------------------------------------

    来源韩顺平jsp视频教程之第二讲(上集)(提交,处理,显示在同一页面)

    myCal.jsp代码

     1 <!--这是计算器的界面 -->
     2 <!-- 可以控制输入的数不能为空且不能为字符串 -->
     3 <%@ page contentType="Text/html;charset=gb2312" %>
     4 <html>
     5 
     6   <h1>我的计算器</h1>
     7   <hr>
     8   <head>
     9   <!-- 在jsp中添加代码,防止用户空提交 -->
    10   <script language="javascript">
    11   <!--
    12   //写一个函数验证用户是不是空提交
    13   function checkNum(){
    14       //判断num1,是不是空的
    15       if(form1.num1.value ==""){
    16           window.alert("num1不能为空!!!");//弹出一个对话框
    17           return false;
    18       
    19       }
    20       //判断num1是不是一个数
    21       if(Math.round(form1.num1.value)!=form1.num1.value){
    22            window.alert("num不是一个数!!!");//弹出一个对话框
    23            return false;
    24       }
    25       
    26       
    27       }
    28   -->
    29   
    30   </script>
    31   </head>
    32   
    33   <body>
    34   
    35   <%
    36   //接受到第一个数
    37    String s_num1=request.getParameter("num1");
    38   //接受第二个数
    39    String s_num2=request.getParameter("num2");
    40   //接受运算符号
    41    String flag = request.getParameter("flag");
    42   int num1=0;
    43   int num2=0;
    44   int result=0;
    45   //java中 String -> int
    46   
    47   //为了防止异常的发生,我们做一个处理
    48   if(s_num1!=null&&s_num2!=null&&flag!=null){
    49       num1=Integer.parseInt(s_num1);
    50       num2=Integer.parseInt(s_num2);   
    51       //计算
    52       if(flag.equals("+")){
    53       //
    54       result =num1+num2; 
    55       }else if(flag.equals("-")){
    56         result =num1-num2; 
    57       //
    58       }else if(flag.equals("*")){
    59         result =num1*num2;
    60       //
    61       }else{
    62         result =num1/num2; 
    63       //
    64       }
    65   }
    66 
    67    %>
    68    
    69     <form name="form1" action="myCal.jsp">
    70            请输入第一个数:<input type="text" name="num1" size="6" maxlength="6" value=<%=num1 %>><br>
    71     <select name="flag">
    72     
    73     <option  value=+>+</option>
    74     <option  value=->-</option>
    75     <option  value=*>*</option>
    76     <option  value=/>/</option>
    77     </select><br>
    78           请输入第二个数:<input type="text" name="num2" size="6" maxlength="6" value=<%=num2 %>><br>
    79      <input type="submit" value="计算" onclick="return checkNum()">
    80           
    81 </form>
    82 <hr>
    83 <!-- 这里输出计算的结果 -->
    84 计算结果:<%=result %><!-- 表达式语法 -->
    85 
    86 
    87 </body>
    88 </html>
    View Code

     解释:

    <input type="text" name="num1" size="6" maxlength="6" value=<%=num1 %>>

     size="6"  :表示文本框的宽度为6; maxlength="6":表示输入的数最大为6位数。

     value=<%=num1 %>的作用:当点击计算时,文本框内的数字不消失

  • 相关阅读:
    JavaScript判断移动端及pc端访问不同的网站
    详情点击文字展开,再点击隐藏
    让IE6/IE7/IE8浏览器支持CSS3属性
    随机输入两位数,并将其交换位置输出
    100-999的水仙花数
    C++读取文件
    求n项阶乘之和并求出和的后六位
    n的阶乘
    3*n+1问题
    完全平方数的判断
  • 原文地址:https://www.cnblogs.com/-rfq/p/7103748.html
Copyright © 2011-2022 走看看