删除会话的先前设置值

时间:2016-05-03 11:45:49

标签: html jsp

我有一个页面,现在有3个图像 单击图像想要像这样设置会话属性

<a href="voting.jsp"><img onclick="myfunction('image_one')" src="image_one.jpg"></a>
<a href="voting.jsp"><img onclick="myfunction('image_two')" src="image_two.jpg"></a>
<a href="voting.jsp"><img onclick="myfunction('image_three')" src="image_three.jpg"></a>
<script>
function myfunction(name)
    if(name='image_one')
        <% session.setAttribute("user","image_one") %>
    else if(name='image_two')
        <% session.setAttribute("user","image_two")%>
    elseif(name='image_three')
        <% session.setAttribute("user","image_three")%>
</script>

现在,当我在voting.jsp页面中使用session.getAttribute时,答案始终是image_three 为什么

2 个答案:

答案 0 :(得分:0)

您正在尝试在javascript / JQuery函数中使用服务器端代码(scriptlet)。 Scriptlet代码在服务器端执行,Web-Container(Tomcat Server)将干净的HTML页面作为响应发送。

所以基本上你在这里做的都是错误的。您无法在JavaScript函数中设置会话。

您可以在此流程中工作: 1.相应地设置任何变量的值。选择图像。

2.通过提交页面并通过相应的值设置会话,将此值发送到servlet。

Setting session variable using javascript。检查一下。

答案 1 :(得分:0)

在设置值到会话之前删除会话值。

<%  session.removeAttribute("user");
    session.setAttribute("user","image_one"); %>