1

アプリケーションにはボタンがあり、数字の 0 から始まり、ボタンがクリックされるたびに整数が 1 ずつ増えます。

問題は、このコードにそれを組み込み、文字列「0」を整数 0 に変換する必要があることです。

<%
    int x = 0;
    try { x = Integer.parseInt("0"); }
    catch (Exception e) { x = 0; }
%>

また、ボタンをクリックしてボタンを追加するために同じページに留まり続けるにはどうすればよいですか (コードを html 内に配置しますか?)

これは私がこれまでに持っているものです:

<html>
    <body>
        <form method="post" action="index.jsp" />

            <% 
                String integer = request.getParameter("0"); 
            %>

            <%
                int x = 0;
                try { x = Integer.parseInt("0"); }
                catch (Exception e) { x = 0; }
            %>

            <input type="text" name="integer" value="<%=integer%>"/>
            <input type="submit" value="submit" />

        </form>
    </body>
</html>
4

1 に答える 1

1

これは、その状況で機能するコードです。

<%! int clicks = 0; %>

<%
    String param = request.getParameter("integer");

    try
    {
       int i = Integer.parseInt(param);

       clicks ++;
    } 
    catch (NumberFormatException e)
    {
    }
%>
<p>Number of clicks untill now: <%= clicks %> </p>

<form action="">
    <input type="text" name="integer" value="1"/>
    <input type="submit" value="submit" />
</form>

あなたはいくつかの間違いをしました:

  • フォームタグを使用していません
  • パラメータに「integer」という名前を付けましたが、「0」という名前を使用してパラメータを回復しようとしています。

あなたのためのいくつかのガイドライン:

  • ページをリロードせずに値を増やしたい場合は、javascript/ajaxが必要です。
  • JSPページにスクリプトレットを追加しないでください。クリック数の増加を処理し、RequestDispatcherを使用して表示している(計算を行わない)JSPページに送信するサーブレットをコーディングする必要があります。

編集:このコードはページ上のすべてのユーザーのクリック値を表示することを警告する必要があります。これが不要な場合は、de JSP宣言を削除し、代わりにparamリクエストを使用する必要があります。私のコードから、それはあなたにとって簡単なはずです。

于 2013-03-07T19:49:52.263 に答える