jsp實(shí)現(xiàn)網(wǎng)頁(yè)計(jì)算器代碼如下:只有兩個(gè)jsp頁(yè)面
myCal.jsp如下:
%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
html>
head>
base href="%=basePath%>">
title>My JSP 'myCal.jsp' starting page/title>
meta http-equiv="pragma" content="no-cache">
meta http-equiv="cache-control" content="no-cache">
meta http-equiv="expires" content="0">
meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
meta http-equiv="description" content="This is my page">
!-- jsp頁(yè)面中不可以直接使用script -->
script language="javascript">
!--
//寫一個(gè)函數(shù)判斷是否兩個(gè)數(shù)都有
function checkNum()
{
//判斷num1 num2是否為空
if((form1.num1.value == "") || (form1.num2.value == ""))
{
window.alert("null,不能為空!");
return false;
}
//判斷是否是數(shù)字
if(Math.round(form1.num1.value) != form1.num1.value Math.round(form1.num2.value) != form1.num2.value)
{
window.alert("num1和num2不是一個(gè)數(shù)");
return false;
}
if(Math.round(form1.num1.value) != form1.num1.value)
{
window.alert("num1不是一個(gè)數(shù)");
return false;
}
if(Math.round(form1.num2.value) != form1.num2.value)
{
window.alert("num2不是一個(gè)數(shù)");
return false;
}
}
-->
/script>
/head>
body>
form name="form1" action="calculator/myResult.jsp" method="post">
請(qǐng)輸入第一個(gè)數(shù):input type="text" name="num1">
select name="flag">
option value=+>+/option>
option value=->-/option>
option value=*>*/option>
option value=/>//option>
/select>
請(qǐng)輸入第二個(gè)數(shù):input type="text" name="num2">
input type="submit" value="計(jì)算" onclick="return checkNum();">
/form>
/body>
/html>
myResult.jsp如下:
%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
html>
head>
base href="%=basePath%>">
title>My JSP 'myResult.jsp' starting page/title>
meta http-equiv="pragma" content="no-cache">
meta http-equiv="cache-control" content="no-cache">
meta http-equiv="expires" content="0">
meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
meta http-equiv="description" content="This is my page">
!--
link rel="stylesheet" type="text/css" href="styles.css">
-->
/head>
body>
%
//第1步接收到 第1個(gè)數(shù)
String s_num1 = request.getParameter("num1");
//第2步接收到 第2個(gè)數(shù)
String s_num2 = request.getParameter("num2");
//第3步接收到 運(yùn)算符
String flag = request.getParameter("flag");
//第4步 計(jì)算
int num1 = Integer.parseInt(s_num1);
int num2 = Integer.parseInt(s_num2);
int result = 0;
if(flag.equals("+"))
{
result = num1+num2;
}
else if(flag.equals("-"))
{
result = num1-num2;
}
else if(flag.equals("*"))
{
result = num1*num2;
}
else if(flag.equals("/"))
{
result = num1/num2;
}
//第5步
out.println("結(jié)果是:"+result);
%>
/body>
/html>
雖然過程很簡(jiǎn)單但是有幾個(gè)值得學(xué)習(xí)的地方:
如何判斷輸入的數(shù)據(jù)是不是數(shù)字:使用Math.round(form1.num1.value) != form1.num1.value 來(lái)判斷;
如何獲取操作值:設(shè)置name屬性 flag實(shí)現(xiàn)。
希望本文所述對(duì)大家學(xué)習(xí)JSP編程有所幫助。
您可能感興趣的文章:- JavaScript獲取客戶端計(jì)算機(jī)硬件及系統(tǒng)等信息的方法
- JS獲取計(jì)算機(jī)mac地址以及IP的實(shí)現(xiàn)方法
- jsvascript圖像處理—(計(jì)算機(jī)視覺應(yīng)用)圖像金字塔
- 可以關(guān)閉計(jì)算機(jī)的js腳本
- Flex通過JS獲取客戶端IP和計(jì)算機(jī)名的實(shí)例代碼
- Vue.js計(jì)算機(jī)屬性computed和methods方法詳解
- 網(wǎng)頁(yè)計(jì)算器 一個(gè)JS計(jì)算器
- js網(wǎng)頁(yè)版計(jì)算器的簡(jiǎn)單實(shí)現(xiàn)
- 使用jsp調(diào)用javabean實(shí)現(xiàn)超簡(jiǎn)單網(wǎng)頁(yè)計(jì)算器示例
- JavaScript計(jì)算器網(wǎng)頁(yè)版實(shí)現(xiàn)代碼分享
- 使用JSP制作一個(gè)超簡(jiǎn)單的網(wǎng)頁(yè)計(jì)算器的實(shí)例分享
- node.js+express制作網(wǎng)頁(yè)計(jì)算器
- javascript實(shí)現(xiàn)簡(jiǎn)單的可隨機(jī)變色網(wǎng)頁(yè)計(jì)算器示例
- JS基于遞歸實(shí)現(xiàn)網(wǎng)頁(yè)版計(jì)算器的方法分析
- JS實(shí)現(xiàn)可針對(duì)算術(shù)表達(dá)式求值的計(jì)算器功能示例
- js表達(dá)式計(jì)算器代碼
- JS實(shí)現(xiàn)基本的網(wǎng)頁(yè)計(jì)算器功能示例