JSPページ内のシンプルな電卓(実装するためではない、一般的に最高のページ)

まずcalculate.jspを作成します

次のように、JavaScriptコードを検証するために使用されます。

<スクリプトタイプ= "テキスト/ JavaScriptを">

機能チェック(){
IF(form.n1.value == "" && form.value.n2 == ""){
のwindow.alert( "値は空にすることはできません");
リターンfalseに;
}
IF(ますisNaN(form.n1.value)&&ますisNaN(form.n2.vavlue)){
のwindow.alert( "入力がデジタルであるかどうかを確認してください!");
falseに戻る;
}
(form.operator.valueのiF == "/" && form.n2.value == "0"){
のwindow.alert( "除数が0ではない、再入力してください!");
falseに戻る;
}
}
</ SCRIPT>

次のようにJavaコードは、計算されます。

<%
ストリング演算子= request.getParameter( "オペレータ")。
int型N1 = Integer.parseInt()request.getParameter( "N1");
int型N2 = 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")。フォワード(リクエスト、レスポンス)。
%>

次のように単純なページを書くために、フォームを形成し、コードは次のとおりです。

%>> / </オプション> </ select>の<入力名= "N2"値= "<%= request.getAttribute(" N2 ")== nullの?" ":request.getAttribute(" N2" )%> "> の<input type ="「=値"を提出=" onclickの= "戻りチェック();" >










<入力名= "結果"値= "<%= request.getAttribute("結果")== NULL?" ":request.getAttribute("結果")%>">
</フォーム>

出典:

<%@ページ言語= "javaの"インポート= "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-当量= "プラグマ"コンテンツ= "キャッシュなし">
<META HTTP-当量= "キャッシュ制御"コンテンツ= "キャッシュなし">
<META HTTP-当量= 「期限が切れ」


<スクリプトタイプ= "テキスト/ JavaScriptを">

機能チェック(){
IF(form.n1.value == "" && form.value.n2 == ""){
のwindow.alert( "値は空にすることはできません");
リターンfalseに;
}
IF(ますisNaN(form.n1.value)&&ますisNaN(form.n2.vavlue)){
のwindow.alert( "入力がデジタルであるかどうかを確認してください!");
falseに戻る;
}
(form.operator.valueのiF == "/" && form.n2.value == "0"){
のwindow.alert( "除数が0ではない、再入力してください!");
falseに戻る;
}
}
</ SCRIPT>

</ HEAD>

<BODY>
<%
ストリング演算子= request.getParameter( "オペレータ")。
int型N1 = Integer.parseInt()request.getParameter( "N1");
int型N2 = 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 = "フォーム" ACTION = "calculate_do.jsp" METHOD = "POST">
<入力名= "N1"値= "<%= request.getAttribute(" N1 ")== NULL?" ": request.getAttribute( "N1")%> ">
<SELECT NAME ="演算子">
<オプション値=" +」<%= "+"に等しい(オペレータ)。? "選択": "" %>> + < /オプション>
。<オプション値= " - " <%= " - "(オペレータ)に等しい"選択":? "" %>> - </オプション>
<オプション値= "*" <%= "*"。等しい(オペレータ) "選択":? "" %>> * </オプション>
<オプション値= "/" <%= "/".equals(operator)"?選択":"」%>> / </オプション>

</ select>の
<入力名= "N2"値= "<%= request.getAttribute(" N2 ")== nullの?" ":request.getAttribute(" N2 ")%>">
<入力タイプ=値"を提出する" = "="のonclick = "戻りチェック();">
<入力名= "結果"値= "<%= request.getAttribute("結果")== NULL?" ":request.getAttribute("結果")%>">
</ FORM>


</ BODY>
</ HTML>

 

おすすめ

転載: www.cnblogs.com/enxi599/p/11372107.html