码迷,mamicode.com
首页 > Web开发 > 详细

如何用jsp实现一个简易计算器(三)

时间:2014-09-08 09:39:26      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:jsp   同一页面接受和提交数据   

做这个jsp页面,主要是为了实现在同一个页面提交和接受数据的功能

这个小程序存在很多不足,希望大家多多批评指正。

<%@ page language="java" contentType="text/html;" pageEncoding="gbk"%>
<!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=gbk">
<title>my simple calculate</title>

<script type="text/javascript" >
	// 输入判断,要求必须是数字格式
	function check_num() {
		var re = /^[0-9,]*$/;
		
		if((!(new RegExp("\\S+")).test(document.getElementById("number1").value))&&(!(new RegExp("\\S+")).test(document.getElementById("number2").value))){
			alert("请输入数一、数二!");
			document.getElementById("number1").focus();
			return false;
		}else if(!(new RegExp("\\S+")).test(document.getElementById("number1").value)){
			alert("请输入数一!");
			document.getElementById("number1").focus();
			return false;
		}else if(!(new RegExp("\\S+")).test(document.getElementById("number2").value)){
			alert("请输入数二!");
			document.getElementById("number2").focus();
			return false;
		}
		
		if ((!re.test(document.getElementById("number1").value))
				&& (!re.test(document.getElementById("number2").value))) {
			alert("数一、数二都不是数字,请输入数字!");
			document.getElementById("number1").focus();
			return false;
		} else if (!re.test(document.getElementById("number1").value)) {
			alert("数一不是数字,请输入数字!");
			document.getElementById("number1").focus();
			return false;
		} else if (!re.test(document.getElementById("number2").value)) {
			alert("数二不是数字,请输入数字!");
			document.getElementById("number2").focus();
			return false;
		}
		document.form1.submit();
		return true;
	}
</script>

</head>
<body>
	<%
		// 获取输入框输入的数一、数二
		String numString1 = request.getParameter("number1");
		String flagString = request.getParameter("flag");
		String numString2 = request.getParameter("number2");

		int num1 = 0;
		int num2 = 0;
		int result = 0;
		boolean flag = false;
		// 判断输入值是否为空,不为空,根据不同符号进行计算
		if (numString1 != null && numString2 != null) {
			num1 = Integer.parseInt(numString1);
			num2 = Integer.parseInt(numString2);
			flag = true;
			if (flagString.equals("+")) {
				result = num1 + num2;
			} else if (flagString.equals("-")) {
				result = num1 - num2;
			} else if (flagString.equals("*")) {
				result = num1 * num2;
			} else {
				result = num1 / num2;
			}
		}
	%>
	<div style="padding: 10px; margin: 15px auto; width: 170px; height: 280px; border: 2px solid #ccc; background-color:#ccc;">
		<h4 align="center">简易计算器</h4>
		<hr>
		<form name="form1" action="compute.jsp" method="get">
			数一: <input type="text" id="number1" name="number1" value="" size="15">
			<br>
			<div style="position: relative; height: 15px; margin-top: 10px;" align="left">
				<select name="flag">
					<option value=+>+</option>
					<option value=->-</option>
					<option value=*>*</option>
					<option value= />/
					</option>
				</select>
			</div>
			<br>
			数二: <input type="text" id="number2" name="number2" value="" size="15">
			<br> 
			<br> 
			<input type="button" name="button1" value="计算" onclick="check_num()">
		</form>

		<br> 计算结果:
		<%
			if (flag)
				out.println(result);
			flag = false;
		%>
	</div>
</body>
</html>


实现效果如下:

bubuko.com,布布扣

如何用jsp实现一个简易计算器(三)

标签:jsp   同一页面接受和提交数据   

原文地址:http://blog.csdn.net/believejava/article/details/39127295

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!