Sessions JSP按钮单击

时间:2012-12-15 10:32:07

标签: html jsp button

您好我想要一个JSP程序,其中显示一个数字和一个按钮。当用户单击此按钮时,其上方的数字会递增。我想在这个程序中包含会话。

我所做的是:

这是html中的表格:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>My Form</title>
</head>
<body>

<%! public void displayNum(){ %>
Number: <%=session.getAttribute("Counter") %>
<%! } %>

<FORM METHOD=POST ACTION="getcount.jsp"> 
<button TYPE="button" ONCLICK= "displayNum()">Add 1</button>
</FORM>

</body>
</html>

这是myJSP文件:

<% 
     AddCount addCount = new AddCount();
     addCount.setCounter(addCount.addCounter(addCount.getCounter()));
     int counter = addCount.getCounter();

     session.setAttribute("Counter", counter);
%>

其中AddCount是一个带有变量计数器,setter和getter的java类,以及一个增加计数器的函数 - addCount(num);我在运行文件时得到的只是一个没有任何文字的按钮:/

我一直在尝试。有人能帮帮我吗?

Thankss!

3 个答案:

答案 0 :(得分:1)

你正在用html添加java代码,这是不可能的。

第二件事即使你在AddCount中有一个静态int计数器它也不会工作,因为许多用户可能会使用这个页面,并且每次点击只需要一个增量。

所以你应该做的就是写一个像这个index.jsp

这样的jsp文件
<%Integer counter = (Integer)request.getSession().getAttribute("counter")
  if(counter==null) {counter=0;}
  counter ++;
  request.getSession().setAttribute("counter",counter);

 %>
 <div>counter=<%=counter%></div><br>
 <a href="index.jsp">+1</a>

答案 1 :(得分:0)

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>My Form</title>
</head>
<body>

function displayNum()
{

<% 
     AddCount addCount = new AddCount();
     addCount.setCounter(addCount.addCounter(addCount.getCounter()));
     int counter = addCount.getCounter();

     session.setAttribute("Counter", counter);
%>

document.getElementById("demo").innerHTML="<%=session.getAttribute("Counter")%>";
}

<p id="demo"> {number will be displayed here} </p>
<button TYPE="button" ONCLICK= "displayNum()">Add 1</button>

</body>
</html>

答案 2 :(得分:0)

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <script src="jquery.js"></script>
    <title>My Form</title>
    </head>
    <body>

    <script>
        $(document).ready(function() {
            $("button").click(function() {
                $("#div1").load("increament.jsp");
            });
        });
    </script>

    <div id="div1"> {number will be displayed here} </div>
    <button>Add 1</button>

    </body>
    </html>

和increment.jsp文件: