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>

你犯了一些错误:

  • 您没有使用表单标签
  • 您将参数命名为“整数”,但您尝试使用“0”的名称来恢复它

一些指导方针:

  • 如果你想在不重新加载页面的情况下增加值,你需要 javascript/ajax。
  • 您不应该将 scriptlet 添加到您的 JSP 页面中。Insted,您应该编写一个处理点击增加的 Servlet,并使用 RequestDispatcher 发送到您正在显示它的 JSP 页面(并且不进行任何计算)。

编辑:我应该警告您,此代码将显示页面上每个用户的点击值。如果您不希望这样,您应该删除 de JSP 声明并改为使用参数请求。从我的代码来看,这对你来说应该很容易。

于 2013-03-07T19:49:52.263 回答