【发布时间】:2011-08-09 19:46:37
【问题描述】:
我试图在单击链接时调用 JavaScript 函数。此 JavaScript 函数在 JSP 标记的属性中定义,我试图将 scriptlet 变量传递给该函数。但是,它没有得到评估。代码的相关部分是:
<span>
<mysecurity:secure_link id='<%="editButton_"+commentUUID%>' entitlement=""
actionOnClick="editComment('<%= commentUUID %>');return false;"
isSurroundedByBrackets="true" enableTitle="" disableLink="<%=disableLink%>">
<span style="color:#0033BB; font:8pt arial;">
<bean:message key="button.edit" />
</span>
</mysecurity:secure_link>
</span>
IE8 在左下角提到了一个 JavaScript 错误。当我右键单击并查看源代码时,生成的 HTML 是:
onclick="editComment('<%= commentUUID %>');return false;"
因此,<%=commentUUID%> 未在 actionOnClick 属性中进行评估,但已在 id 属性中成功评估。
这是如何引起的,我该如何解决?
【问题讨论】:
-
javascript:不属于onclick属性。 -
点击链接时会发生什么? Firebug 或 WebKit 开发人员工具的控制台中是否显示错误消息?还是什么都没发生?
-
这是一条评论。不是你的问题的答案。如果没有看到生成的 HTML 代码,很难说是什么损坏了 - 但
onclick="..."中的javascript:始终是不必要的。 -
@matt:只是普通的原始 javascript。
onclick="editComment(...)"。您唯一一次使用 javascript: pseudourl 是在<a href="javascript:...">...</a>。 -
它在页面左下角显示错误(我使用的是 IE8)然后当我右键单击并查看源代码时,相关行是:onclick="editComment(' ');返回假;" '' 通常被 jsp 中定义的字符串值替换,但不是
标签: java javascript jsp syntax jsp-tags