(일반적으로 가장 잘 구현하지 않는 페이지) JSP 페이지에서 간단한 계산기

먼저 calculate.jsp를 만들

다음과 같이이 자바 스크립트 코드를 확인하는 데 사용됩니다 :

<스크립트 유형 = "텍스트 / 자바 스크립트">

기능 검사 () {
IF (form.n1.value == ""&& form.value.n2 == "") {
는 Window.alert ( "값이 비어있을 수 없습니다");
반환 false로;
}
경우 (때는 isNaN (form.n1.value) && 때는 isNaN (form.n2.vavlue)) {
는 Window.alert는 ( "입력이 디지털인지 여부를 확인하시기 바랍니다!")
; false로 반환
}
(form.operator.value 경우 == "/"&& form.n2.value == "0") {
는 Window.alert ( "제수가 0이 아닌, 제발 다시 입력!");
false로 반환;
}
}
</ SCRIPT>

다음과 같이 Java 코드가 계산된다 :

<%의
문자열 연산자 = request.getParameter ( "오퍼레이터");
N1 = INT있는 Integer.parseInt () request.getParameter ( "N1");
N2 = INT있는 Integer.parseInt () request.getParameter ( "N2");
INT 결과 = 0;
{(. "+"가 (오퍼레이터)와 동일) 경우
결과 = N1 + N2;
}
다른 경우 -은 {(. ""(오퍼레이터)와 동일)
결과는 N1 = N2 -;
}
다른 경우는 (. "*"동일 (연산자)) {
결과 N1 = N2 *;
}
다른 {
결과 = N2 / N1;
}
request.setAttribute ( "N1", N1);
request.setAttribute ( "N2", N2);
request.setAttribute ( "결과", 결과); //往요청作用域里放一个值
request.getRequestDispatcher ( "calculate.jsp"). 순방향 (요청, 응답);
%>

다음과 같이 간단한 페이지를 작성하는 양식을 형성, 코드는 다음과 같습니다

% >> / </ 옵션> </ 선택> <input NAME = "N2"값 = "<% = request.getAttribute ("N2 ") == 널? ''request.getAttribute ("N2 ") %> "> <input 타입 =") "값 ="= "의 onclick ="리턴 확인 (제출; " >










<input 이름 = "결과"값 = "<% = request.getAttribute ("결과 ") == 널? ''request.getAttribute ("결과 ") %>">
</ FORM>

출처 :

<% @ 페이지 언어 = "자바"수입 = ". * java.util의"pageEncoding = "UTF-8"%>
<%
문자열로 request.getContextPath = ();
문자열 basePath = request.getScheme () + ": //"+ request.getServerName () + ":"+ request.getServerPort () + 경로 + "/";
%>
<! DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.01 과도 // EN">
<HTML>
<HEAD>
<기본 href = "<% = basePath %>">

<제목> 내 JSP 'calaulate. JSP '시작 페이지 </ TITLE>

<META HTTP-EQUIV = "프라 그마"내용 = "노 캐시">
<META HTTP-EQUIV = "캐시 제어"내용 = "노 캐시">
<메타 HTTP-당량 = "만료"


<스크립트 유형 = "텍스트 / 자바 스크립트">

기능 검사 () {
IF (form.n1.value == ""&& form.value.n2 == "") {
는 Window.alert ( "값이 비어있을 수 없습니다");
반환 false로;
}
경우 (때는 isNaN (form.n1.value) && 때는 isNaN (form.n2.vavlue)) {
는 Window.alert는 ( "입력이 디지털인지 여부를 확인하시기 바랍니다!")
; false로 반환
}
(form.operator.value 경우 == "/"&& form.n2.value == "0") {
는 Window.alert ( "제수가 0이 아닌, 제발 다시 입력!");
false로 반환;
}
}
</ SCRIPT>

</ head>

<body>
<%
문자열 연산자 = request.getParameter ( "오퍼레이터");
N1 = INT있는 Integer.parseInt () request.getParameter ( "N1");
N2 = INT있는 Integer.parseInt () request.getParameter ( "N2");
INT 결과 = 0;
{(. "+"가 (오퍼레이터)와 동일) 경우
결과 = N1 + N2;
}
다른 경우 -은 {(. ""(오퍼레이터)와 동일)
결과는 N1 = N2 -;
}
다른 경우는 (. "*"동일 (연산자)) {
결과 N1 = N2 *;
}
다른 {
결과 = N2 / N1;
}
request.setAttribute ( "N1", N1);
request.setAttribute ( "N2", N2);
request.setAttribute ( "결과", 결과); //往요청作用域里放一个值
요청.
%>


<form NAME = "폼"조치 = "calculate_do.jsp"METHOD = "POST">
<input 이름 = "N1"값 = "<% = request.getAttribute ("N1 ") == 널? '' request.getAttribute ( "N1") %> ">
<SELECT NAME ="연산자 ">
<옵션 값 ="+ "<% ="+ "동일 (오퍼레이터).? '선택' ''>> % + < / 옵션>
. <? 옵션 값 = "-"<% =이 "-"(오퍼레이터) '선택'동일 ''% >> - </ 옵션>
<옵션 값 = "*"를 <% = "*". 동일 (오퍼레이터) "선택"? ","% >> * </ 옵션>
<옵션 값 = "/"<% = "/".equals(operator)?"선택된 '' '>> % / </ 옵션>

</ 선택>
<input 이름 = "N2"값 = "<% = request.getAttribute ("N2 ") == 널?' 'request.getAttribute (" N2 ") %>">
<input 타입 = "="의 onclick = 값 "제출", "> 리턴 확인 ()"
<input 이름 = "결과"값 = "<% = request.getAttribute ("결과 ") == 널? ''request.getAttribute ("결과 ") %>">
</ FORM>


</ body>
</ HTML>

 

추천

출처www.cnblogs.com/enxi599/p/11372107.html