从JSP弹出窗口获取值后,JSP页面值不会被填充

  • 本文关键字:JSP 填充 窗口 获取 java jsp jsf
  • 更新时间 :
  • 英文 :


我正在将JSP值传递给JSF的支持bean。一旦我在bean中获得值,然后我尝试使用setter方法将值分配给inputText字段,就像这样。

public void testProcess(){
empBean.setEmpName(empBean.getEmpId());
}
在JSP页面的操作中调用

testProcess方法。

我的问题是当我在bean中设置值时,JSF页面的值没有被填充。我需要显式刷新JSF页面吗?如果需要,我该怎么做?

是的,您需要刷新主页面。在服务器上发生的事情不会自动在客户端(浏览器)上发生。

这类操作的一个相当常见的模式是让弹出窗口使用ajax完成表单发布(对于像jQuery这样的许多javascript框架来说很容易)。请参阅http://jquery.malsup.com/form/获得一个使用jQuery表单插件的示例。在ajax调用的响应处理程序中,重新加载主页(使用窗口)。属性)并关闭弹出窗口。在jQuery表单插件的例子中,你可以这样做:

<script type="text/javascript"> 
    // wait for the DOM to be loaded 
    $(document).ready(function() { 
        // bind 'myForm' and provide a simple callback function 
        $('#myForm').ajaxForm(function() {    
        // reload main page
        window.opener.location.reload();
        // close popup
        window.close();
        }); 
    }); 
</script> 

您想要使用ajax提交表单的原因是,您想要等待刷新主页,直到发布完成,并且执行常规发布将导致重新加载弹出窗口,这在某些浏览器中会使窗口无效。

相关内容

  • 没有找到相关文章