属性问题

时间:2009-04-11 10:18:03

标签: jsp onclick tags

我的问题是标签 a 中的属性 onclick 。我想在属性 onclick 中执行scriplet命令。当我写这个...

<a href="somethig" onclick="session.setAttribute('newAttribute','value')" >Click on me</a>

...所以没有任何反应(会话的属性未设置),如果我写这个

<a href="somethig" onclick="<% session.setAttribute('newAttribute','value'); %>" >Click on me</a>

所以,会话的属性现在已设置(不是当我克隆它时)。

(对不起我的英文,我是初学者:)

1 个答案:

答案 0 :(得分:3)

您混淆了客户端代码和服务器端代码的角色。

锚标记的'onclick'事件将仅在客户端上执行。

您的代码将以:

的形式发送给客户
<a href="somethig" onclick="" >Click on me</a>

但是会在服务器上执行以下操作:

session.setAttribute('newAttribute','value');

&lt; %%&gt;标签表示代码在服务器上运行,而不是在客户端上运行。

因此,为了使其工作,您需要执行某种类型的javascript来“回调”到服务器,以便发出已点击链接的信号。这通常是通过对服务器上另一个页面的AJAX调用来完成的。