[英]Bean method getting invoked randomly from action property
我的JSP中有以下内容,这是从JSF页面调用的弹出窗口。
<h:commandButton id="cmd" value="Click"
onclick="document.getElementById('frm_name:hiddenInput').value=test();"
action="#{bean.actionClick}" />
并在javascript的test()方法中
opener.focus();
opener.location.href = opener.location;
self.close();
return hidValues;
我面临的问题是从JSP弹出窗口中选择值时,并非每次都调用backing bean的操作方法,有时它被调用,有时却不被调用。
我怀疑这是否是由于缓存造成的,所以我在JSP弹出窗口中添加了以下内容
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Pragma", "no-cache");
response.setDateHeader("Expires", 0);
但是,即使在添加了不缓存JSP页面之后,仍然没有调用bean的仍然动作方法,就像我前面提到的那样,有时它被调用,有时t没有被调用。
我该如何解决这个问题?
我的JSF版本1.1,页面范围是会话。
我认为您的问题是提交之前窗口关闭了,提交完成后可以关闭窗口,您可以将变量放在bean上,并在页面加载时在javascript上读取它
<script>
if( ${bean.canClose} ) {
self.close()
}
</script>
因此,在您的操作方法被调用后,页面将重新加载并自行关闭
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.