javascript 子窗体父窗体相互传值方法
javascript 子窗体父窗体相互传值方法
发布时间:2016-12-30 来源:查字典编辑
摘要:查字典教程网精简使用版本,一般情况好多cms都有一些这样的函数。dedecms中的选择相关文章也是用的这样的函数。下面给出具体的代码。父页面...

查字典教程网精简使用版本,一般情况好多cms都有一些这样的函数。dedecms中的选择相关文章也是用的这样的函数。下面给出具体的代码。

父页面核心代码:

复制代码 代码如下:

<script>

function SelectArcListA(fname){

var posLeft = 10;

var posTop = 10;

window.open("content_select_list.asp?f="+fname+"&k="+form1.keyword.value, "selArcList", "scrollbars=yes,resizable=yes,statebar=no,width=700,height=500,left="+posLeft+", top="+posTop);

}

</script>

<input name="lsel" type="button" id="lsel" onChange="" value="从已发布文档中选取...">

子页面的核心代码:

复制代码 代码如下:

<SCRIPT language=javascript>

//获得选中文件的文件名

function getCheckboxItem()

{

var allSel="";

if(document.form2.arcID.value) return document.form2.arcID.value;

for(i=0;i<document.form2.arcID.length;i++)

{

if(document.form2.arcID[i].checked)

{

if(allSel=="")

allSel = document.form2.arcID[i].value;

else

allSel = allSel+","+document.form2.arcID[i].value;

}

}

return allSel;

}

function selAll()

{

for(i=0;i<document.form2.arcID.length;i++)

{

if(!document.form2.arcID[i].checked)

{

document.form2.arcID[i].checked=true;

}

}

}

function noSelAll()

{

for(i=0;i<document.form2.arcID.length;i++)

{

if(document.form2.arcID[i].checked)

{

document.form2.arcID[i].checked=false;

}

}

}

function ReturnValue()

{

if(window.opener.document.form1.xiangguanid.value==""){

window.opener.document.form1.xiangguanid.value = getCheckboxItem();

}

else{

window.opener.document.form1.xiangguanid.value += ","+getCheckboxItem();

}

alert("成功增加你选中的ID,你可以继续增加");

//window.opener=true;

//window.close();

}

下面是html代码,页面中需要<input type="checkbox" name="arcID" value="<%=rs("id")%>">输出选择的id

复制代码 代码如下:

<A class=inputbutx

href="javascript:selAll()">全选</A> <A class=inputbutx

href="javascript:noSelAll()">取消</A> <A class=inputbutx

href="javascript:ReturnValue()">把选定值加到列表</A>

一下是补充:

//模式窗体传值

<>

复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<title>弹出窗口内录入数据确定后返回给父窗体--主窗体</title>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="jb 51.net">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

<script language="javascript" type="text/javascript">

function doInput()

{

var win = window.showModalDialog("Childform.html",window,"dialogWidth=500px;dialogHeight=300px;center=yes;status=no");

if(win != null)

{

document.getElementById("parentTextBox").value = win;

}

}

</script>

</head>

<body>在新弹出的窗体里输入数据,传输到父窗体.

<br/>

<br/>

<br/>

<input type="text" id="parentTextBox" /> <a href="javascript:doInput()">点这里弹出子窗体</a>

</BODY>

</HTML>

<>

<>

复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<title> 弹出窗口内录入数据确定后返回给父窗体--子窗体</title>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="qiujy">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

<base target="_self">

</head>

<body topmargin="0" leftmargin="0" scroll="no">

</br>

<input type="text" id="childTextBox"/>

</br></br>

<a href="javascript:doPassToParent()">点这里返回</a>

</BODY>

</HTML>

<script language="javascript" type="text/javascript">

document.getElementById("childTextBox").value = window.dialogArguments.document.getElementById("parentTextBox").value;

function doPassToParent()

{

if(document.getElementById("childTextBox").value.length <=0)

{

alert("请填写数据");

return;

}

window.returnValue = document.getElementById("childTextBox").value;

window.close();

}

</script>

//子窗体和父窗体传值

1.新建两个页面 一个是 Parent.html

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>父窗体</title>

<script language="javascript" type="text/javascript">

function OpenWindow(){

window.open('son.html');

}

function setValue(m_strValue){

document.getElementById("txt_Value").value = m_strValue;

}

</script>

</head>

<body>

<form id="form1" name="form1" method="post" action="">

<label>

<input type="text" name="txt_Value" id="txt_Value" />

</label>

<label>

<input type="button" name="btn_ShowClose" id="btn_ShowClose" value="按钮" />

</label>

</form>

</body>

</html>

另一个是子窗体 :

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>子窗体</title>

<script language="javascript" type="text/javascript" >

function CloseWind(){

opener.setValue("传值到父窗体");

window.close();

}

</script>

</head>

<body>

<form id="form1" name="form1" method="post" action="">

<label>关闭

<input type="button" name="btn_Close" id="btn_Close" value="按钮"

/>

</label>

</form>

</body>

</html>

2.通过子窗体执行的父窗体的setValue(m_strValue)来执行赋值操作.

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类