1、主页面
//index.jsp
//打开一个弹出页面
function opennew() {
window.open("result1.jsp", "newwindow", "height=300,width=400,top=50,left=200,resizable=no");
}
//接受弹出页面传回的checkbox状态并显示
function addcheck(selectid) {
for (var i = 0; i < selectid.length; i++) {
document.getElementById(selectid[i]).checked = true;//设置checkbox状态为选中
document.getElementById(i).disabled = true;//设置为不可用
var divHTML = document.getElementById("div").innerHTML;
if (divHTML.indexOf(selectid[i]) == -1) {
document.getElementById("div").innerHTML += selectid[i] + "<br>";//将弹窗页面checkbox选择的值显示在本页面
}
}
}
2、第一个弹出页面
//result1.jsp
//接受上一页传来的checkbox状态并在当前页显示
window.onload = function () {
var selectid = window.opener.document.getElementsByName("myfruit");
for (var i = 0; i < selectid.length; i++) {
if (selectid[i].checked == true) {
document.getElementById(i).checked = true;
}
}
};
//将当前页checkbox的状态传回上一页
function closewin() {
//window.opener.location.reload();
//window.opener.document.getElementById("name").innerHTML=123;
var selectid = document.getElementsByName("test");
var select = new Array();
var length = 0;
for (var i = 0; i < selectid.length; i++) {
if (selectid[i].checked == true) {
select[length] = selectid[i].value;
length++;
}
}
window.opener.parent.addcheck(select);//调用index.jsp页面的javascript方法addcheck()
window.close();//关闭当前页
}
//打开一个弹出页面
function opennew2() {
window.open("result2.jsp", "new2window", "height=300,width=400,top=100,left=500,resizable=no");
}
3、第二个弹出页面
//result2.jsp
//根据上一页选中的checkbox在当前页新增checkbox
window.onload = function () {
var selectid = window.opener.document.getElementsByName("test");
for (var i = 0; i < selectid.length; i++) {
if (selectid[i].checked == true) {
$("#selectid").append("<option value=" + selectid[i].value + ">"
+ window.opener.document.getElementById("test"+i).innerHTML + "</option>");
}
}
};
function showtext(){
alert($("#selectid").val());
}