在javascript中更新jsp变量

在javascript中更新jsp变量,javascript,jsp,Javascript,Jsp,我在jsp页面顶部定义了一个变量: <%! int count = 0; %> 然后我用如下按钮单击调用jquery: <script type="text/javascript"> $(document).ready(function() { $('#somebutton').click(function() { var c = '<%=count%>'; <% count += 5; %

我在jsp页面顶部定义了一个变量:

<%! int count = 0; %>

然后我用如下按钮单击调用jquery:

<script type="text/javascript">
$(document).ready(function() {         
    $('#somebutton').click(function() {
        var c = '<%=count%>';
        <% count += 5; %>
    });
});
</script>

$(文档).ready(函数(){
$(“#somebutton”)。单击(函数(){
var c=“”;
});
});
其思想是在函数完成后,变量计数将被更新(并保持)。然而,它似乎在本地更新count,但不会在全局范围内持续。当我点击按钮时,按钮计数总是设置为5,但在进一步点击按钮时,不会增加到10、15等


如何从jquery函数中更新jsp变量并使其持久化?

您必须回调服务器并将数据存储在会话变量(或cookie,我认为这取决于安全需要)。

@Aaron您可以在javascript中使用一种方法,如

function increment(){
                var value1=document.getElementById("lbl1").value;
                value1=parseInt(value1)+5;
                document.getElementById("lbl1").innerText=value1;
            }
其中lbl1是jsp中文本框的id,该文本框的初始化值为0,即
。在按钮上单击call increment()方法,如下所示


希望这能满足您的要求…

JSP是服务器端的。JavaScript是客户端的。二者不相融合;你所做的是增加一次。啊,是的。感谢您的澄清。JSP生成HTML,从Web服务器发送到webbrowser。JS是HTML的一部分。右键单击浏览器中的页面并查看源代码以获得indightend.BalusC,我知道页面是由HTML组成的。不过,谢谢。我现在做的事,一块饼干就够了。谢谢你的主意。好主意,我最终使用了一个cookie,但这是一个有趣的技巧,可能也会奏效。当然你也可以使用cookie,但对于这个小要求,cookie方法会太长。。。