el+jstl猜數字

<%@page import="java.util.Random"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>猜數字</title>
</head>
<body>
	<!-- 
		隨機數放入session: 
		先從session中取之前放入的隨機數,如果取不到,則說明是新局,生成隨機數並放入session
		比較:
		取出session的值和提交的值,進行比較。
		session
		int rand = random.nextInt(100)
	 -->
	 <%!  //生成java 放在  Servlet.java中方法外,聲明屬性和方法
	 	Random random = new Random();
	 	//1聲明一個變量
	 	int rand = random.nextInt(100);
	 %>
	 <%	//放入session
	 	session.setAttribute("rand", rand);
	 %>
	 
	 <!-- 點擊重新玩一次的按鈕 -->
	 <c:if test="${not empty param.redo }">
	 	<c:remove var="rand" scope="session"/>
	 </c:if>
	 <c:if test="${empty sessionScope.rand }">
	 	<c:set var="rand" scope="session" value="<%=random.nextInt(100) %>"></c:set>
	 </c:if>
	<form action="" method="post">
		<p>
			 ${sessionScope.rand }</h1> 
			請輸入您猜的數:<input name="num"> 
			<input type="submit" value="提交">
		</p>
	</form>
	
	<form action="" method="post">
		<input type="hidden" value="redo" name="redo">
		<input value="再玩一次"  type="submit">
	</form>
	
	<div style="color: blue;font-size: 30px">
		<c:if test="${not empty sessionScope.rand and not empty param.num}">
			<!--把用戶輸入的和session中的比較 -->
			<c:if test="${param.num gt sessionScope.rand}">
				<span style="color:red;font-size: 30px">大了</span>
			</c:if>
			<c:if test="${param.num lt sessionScope.rand}">
				<span style="color:green;font-size: 30px">小了</span>
			</c:if>
			<c:if test="${param.num eq sessionScope.rand}">
				<span style="color:yellow;font-size: 30px">恭喜您成功了!</span>
			</c:if>
		</c:if>
		<!-- 如果提交併且是空字符串時 -->
		<c:if test="${param.num ne null and param.num eq '' }">
			不能爲空!
		</c:if>
	</div>
</body>
</html>

運行截圖
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章