只爱一次

不留遗憾

javascript中使用showModalDialog的注意事项

在网页上,我们一般使用window.showModalDialog(<url>,<标题>,<属性>)来弹出一个模态对话框。但是在模态对话框中的提交有时候是无效的,而且页面跳转的话不是在对话框中的。
    解决这个问题的方法一般是在对话框中的页面上添加一个<iframe>,由<iframe>来转发真正的请求。为了增加页面的可重用行,我们一般会增加一个portal页,如下:

<% @ page contentType = " text/html; charset=gb2312 "   %>
<% @ page import = " you.RequestCacher "   %>
<%
    
String  requestUrl  =   " /test/test.do " ;
    
String  params  =  RequestCacher.getParameters(request); // 获取请求参数
    
String  action  =  requestUrl + " ? " + params;
%>

< table  width ="100%"  height ="100%"  border ="0"  cellspacing ="0" >
    
< tr >
        
< td >
            
< iframe  width ="100%"  height ="100%"  src ="<%=action%>" ></ iframe >
        
</ td >
    
</ tr >
</ table >
  
   下面说明一下如上代码。一般我们可能会在弹出对话框时使用这样的方式:window.showModalDialog("/test/test.do",“测试”,"dialogWidth:500px;dialogheight:650px"),如果这样的话,test.do跳转的页面如果继续有请求的话,服务器可能服务收到请求(可能是session的问题),还有请求后的跳转页面不会出现在对话框中。

posted on 2006-05-16 11:36 onlylife 阅读(1731) 评论(0)  编辑  收藏 所属分类: Web技术


只有注册用户登录后才能发表评论。


网站导航: