保持页面窗口在最前面。

今天在写个页面弹出窗口的时候,需要使用struts中的action,本来想使用showModalDialog打开有模窗口,保持子窗口始终在最前面,发现,操作父窗口的window对象无法传递子页面进行操作,后来想用open打开操作,结果发现使用保持不了子窗口再最前面。

网络一搜还得感谢“yjavaeye上的”这位“

FengShen_Xia

”朋友。

测试成功:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>test</title>
<script type="text/javascript">
   function openTestAction(){
    var testId = document.getElementById("testId").value;
    var testName = document.getElementById("testName").value;
   var newWin = window.open("TestAction.do?testId="+testId+"&testName="+testName,'newWin','height=200,width=400,top=200,left=200,toolbar=no,menubar=no,scrollbars=no, resizable=no,location=no,status=no'); 
    
   window.οnfοcus=function (){   
       if(newWin && !newWin.closed){ 
           newWin.focus(); 
       } 
   };  
    
   window.document.οnfοcus=function (){   
       if(newWin && !newWin.closed){ 
           newWin.focus(); 
       } 
   };  
    
   window.document.οnclick=function (){   
       if(newWin && !newWin.closed){ 
           newWin.focus(); 
       } 
   };  
    
   window.document.οndblclick=function (){   
       if(newWin && !newWin.closed){ 
           newWin.focus(); 
       } 
   };
 
    }
</script>

</head>
<body>
<table>
<tr>
<td>
<input id="testId" name="testId" value="${param.testId}"/>
<input id="testName" name="testName" value="${param.testName}"/>

<input type="button" value="openTest" οnclick="openTestAction();"/>

</td>
</tr>
</table>
</body>
</html>

子页面:<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
   
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>

<title>success</title>
<script type="text/javascript">
 function closeCur(i) {/*===通过变量区别单选框后面的文本框的内容===*/
 
  //alert('双击事件');
  //alert(i);
 
     var oRadio=document.getElementsByName("selectFlag");
  alert('总共有'+oRadio.length+'个按钮');

        //========可能需要对js空对象一些判断=======   
  for(var i=0;i<oRadio.length;i++){
    if(oRadio[i].checked){
     alert('您选中了第'+(i+1)+'个');
     var testIdVal = document.getElementById('testId_'+i).value;//当前页面值
     var testNameVal = document.getElementById('testId_'+i).value;
     window.opener.document.getElementById("testId").value = testIdVal;//父窗口是传统的属性值只有一份
     window.opener.document.getElementById("testName").value = testNameVal;
    }
  }
  
  close();
 }
</script>
</head>
<body οnblur="focus();">
<form>
<table>

<c:set var="i" value="0" />
<%
 for (int j=0; j<5; j++){
  %>
  <tr>
 <td><input type="radio"  name="selectFlag" onDblClick="closeCur('${i}')"></td>
 <td><input id="testId_${i}" name="testId" value="${testId}_${i}"/></td>
 <td><input id="testName_${i}" name="testName" value="${testName}_${i}"/></td>
 </tr>
 <c:set var="i" value="${i+1}"/>
  <%
 
 }

%>

</table>
</form>
</body>
</html>

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值