在我的Struts 2应用程序中,我使用迭代器标记从数据库中获取一个值表,并使用相应的getter和setter。例如,我获得了帐号,姓名和帐户余额列表。
现在我不想做的是,如果有人点击帐号,那么请求将被发送到另一个需要getter和setter的动作类,并将他重定向到一个页面,其中将显示帐户详细信息在那个帐号上。
问题是,当用户点击url时,值会像get参数一样传递,因此它非常不安全。 我想隐藏价值观。
目前我正在使用以下内容:
<s:url action="custACDetails" var="urlTag" >
<s:param name="yourAc"><s:property value="acno"/></s:param>
</s:url>
<a href="<s:property value="#urlTag" />" ><s:property value="acno"/></a>
答案 0 :(得分:0)
您可以添加表单来触发表单提交事件,而不是默认链接的click
事件。表单应包含用于保存参数值的隐藏字段。然后添加javascript代码来处理click
事件。
<s:url action="custACDetails" includeContext="false" var="urlTag"/>
<s:set var="contextPath">${pageContext.request.contextPath}</s:set>
<s:a id="acno" href="%{#contextPath+#urlTag}"><s:property value="acno"/></s:a>
<s:form id="form" action="%{#urlTag}" method="POST">
<s:hidden name="yourAc" value="%{acno}"/>
</s:form>
<script type="text/javascript">
$(document).ready(function() {
$("#acno").click(function(e) {
e.preventDefault();
$("#form").submit();
});
});
</script>