大家看看我这个showModalDialog内select的值怎么返回给opener的select?

lauries 2004-07-15 10:24:49
我在body.htm上打开selUser.htm,现在想把selUser内的select所有的值返回给body.htm内的select,请问返回和怎么接收的函数怎么写?

====================================================
body.htm - 接收值的函数怎么写?

<html><head></head>
<script language="JavaScript">
function openwin(srcFile,obj,winFeatures)
{
window.showModalDialog(srcFile, obj, winFeatures);
}
</script>

<body>
<form action="" method="get" name="myForm">
<select name="selUser" size="4" multiple style="width:400px"></select>
<input type=button value=" 添加 " onclick="window.openwin('selUser.htm',myForm,'status:no;scrollbars:yes;help:no;dialogleft:400px;dialogtop:300px;dialogwidth:600px;dialogheight:400px')">
</form>
</body></html>

====================================================
selUser.htm - 传递值的函数怎么写?

<html><head></head>
<script language="JavaScript">
function AddUser()
{
//opener.addSel();
window.close();
}
</script>

<body>
<form action="" method="get" name="myForm">
<select name="selUser" size="3" multiple style="width:400px">
<option value="1">aaa</option>
<option value="2">bbb</option>
<option value="3">ccc</option>
</select>
<input name="button" type=button onclick="AddUser()" value=" 确认 ">
</form>
</body></html>

...全文
292 12 打赏 收藏 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
waiber 2004-07-15
  • 打赏
  • 举报
回复
弹出页面:

//此函数用于获取选中的值

function Select()
{
var IntcboLg=document.form1.selNode.length
var strcboValue=''
var strcboText=''
for (var i=0;i<IntcboLg;i++ )
{
if (strcboValue=='')
{
strcboValue=strcboValue+document.form1.selNode.options(i).value
strcboText=strcboText+document.form1.selNode.options(i).text
}else
{
strcboValue=strcboValue+','+document.form1.cboNode.options(i).value
strcboText=strcboText+','+document.form1.cboNode.options(i).text
}
}
if (strcboValue!=''){
var Strreturn=strcboValue+'#'+strcboText
window.returnValue=Strreturn
window.close();
}
}



接收页面:

function SelMutNode(url)
{

var strNode=showModalDialog(url',0,"dialogWidth:418px;dialogHeight:326px;status:no");
if (strNode!=-1 && typeof(strNode)!='undefined')
{
var strNodeary=strNode.split("#")
var strNodeID=strNodeary[0]
var strNodeName=strNodeary[1]
document.form1.txtNode.value=strNodeID;
document.form1.txtNode.value=strNodeName;
}

}


思路就是这样,自己去改改。
lauries 2004-07-15
  • 打赏
  • 举报
回复
谢,有启发作用

但是,我想把新开窗口selUser.htm内select的所有值全部转移到body.htm内的select中,两个select的值是一样的

这个问题我花了两三天的时间了,实在不会,寄托希望于此了
gamegod 2004-07-15
  • 打赏
  • 举报
回复
如果是想把第二页的东西增加到第一个页面,你看看我给你的代码,不知道是不是符合你的要求:
第一页:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>

<body>



<p><select size="8" name="txt">

<option>1</option>

</select></p>

<input type="button" onclick="window.open('in.htm')" value="Open">


</body>

</html>

第二页:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>

<script>
function CloseOpen() {

var ll=document.all.tags("input");

for(i=0;i<ll.length;i++)
{
if(ll[i].type=="checkbox")
{
if(ll[i].checked==true)
{
opener.document.all.txt.length=opener.document.all.txt.length+1;
opener.document.all.txt.options[opener.document.all.txt.length-1].text="123";
opener.document.all.txt.options[opener.document.all.txt.length-1].value=i;
}

}

}
window.close();
}
</script>
<body onunload="">
<p><input type="checkbox" name="C1" value="1">11</p>
<p><input type="checkbox" name="C1" value="2">21</p>
<p><input type="checkbox" name="C1" value="3">31</p>
<p><input type="checkbox" name="C1" value="4">41</p>
<p><input type="checkbox" name="C1" value="5">51</p>
<p><input type="checkbox" name="C1" value="6">61</p>
<p><input type="checkbox" name="C1" value="7">71</p>
<p><input type="button" onclick="javascript:CloseOpen();" value="close"></p>
</body>

</html>
lauries 2004-07-15
  • 打赏
  • 举报
回复
谢谢,谢谢大家,包括UP的“同志”,稍微整理了一下,代码是下面的:

body.htm

<html>
<head>
</head>
<script language="JavaScript">
function SelMutNode(url)
{
var obj=document.form1 ;
var strNode=showModalDialog(url,obj,"dialogWidth:418px;dialogHeight:326px;status:no");

var ret_val = strNode;
alert(ret_val)
if (ret_val!=null)
{
var strNodeary=ret_val.split("#");
var strNodeID=strNodeary[0];
var strNodeName=strNodeary[1]
//循环写值1,2,3 aaa,bbb,ccc
alert(strNodeID + " " + strNodeName);
a=strNodeID.split(",")
b=strNodeName.split(",")
for(i=0;i<a.length;i++)
document.form1.txtNode.options[document.form1.txtNode.options.length] = new Option(b[i],a[i])
}

}


//-->
</script>

<body>
<form action="" method="get" name="form1">
<select name="txtNode" size="4" multiple style="width:400px"></select>
<input type=button value=" add " onclick="SelMutNode('selUser.htm')">
<input type="hidden" value="" name="retval">
</form>
</body>
</html>

selUser.htm

<html>
<head>
</head>
<script language="JavaScript">
function Select()
{
var f = window.dialogArguments;
var IntcboLg=document.form1.selNode.length;
var strcboValue='';
var strcboText='';
for (var i=0;i<IntcboLg;i++ )
{
if (strcboValue=='')
{
strcboValue=strcboValue+document.form1.selNode.options(i).value;
strcboText=strcboText+document.form1.selNode.options(i).text;
}else
{
strcboValue=strcboValue+','+document.form1.selNode.options(i).value;
strcboText=strcboText+','+document.form1.selNode.options(i).text;
}
}
if (strcboValue!=''){
var Strreturn=strcboValue+'#'+strcboText;
f.retval.value=Strreturn;
window.returnValue=Strreturn
window.close();
}
}

</script>

<body>
<form action="" method="get" name="form1">
<select name="selNode" size="3" multiple style="width:400px">
<option value="1">aaa</option>
<option value="2">bbb</option>
<option value="3">ccc</option>
</select>
<input name="button" type=button onclick="Select()" value="¡¡Confirm¡¡">
</form>
</body>
</html>

希望此贴可以帮助到所有有这个需要的人
孟子E章 2004-07-15
  • 打赏
  • 举报
回复
大概yisi


<html>
<head>
</head>
<script language="JavaScript">
function SelMutNode(url)
{
var obj=document.form1 ;
var strNode=showModalDialog(url,obj,"dialogWidth:418px;dialogHeight:326px;status:no");

var ret_val = strNode;
alert(ret_val)
if (ret_val!=null)
{
var strNodeary=ret_val.split("#");
var strNodeID=strNodeary[0];
var strNodeName=strNodeary[1]
//循环写值1,2,3 aaa,bbb,ccc
alert(strNodeID + " " + strNodeName);
a=strNodeID.split(",")
b=strNodeName.split(",")
for(i=0;i<a.length-1;i++)
document.form1.txtNode.options[document.form1.txtNode.options.length] = new Option(b[i],a[i])
}

}


//-->
</script>

<body>
<form action="" method="get" name="form1">
<select name="txtNode" size="4" multiple style="width:400px"></select>
<input type=button value=" add " onclick="SelMutNode('selUser.htm')">
<input type="hidden" value="" name="retval">
</form>
</body>
</html>
lauries 2004-07-15
  • 打赏
  • 举报
回复
再次修改了下,能够得到值了,但是我又写不进去body.htm的select中


===============================
body.htm //alert显示我已经把值取过来了

<html>
<head>
</head>
<script language="JavaScript">
function SelMutNode(url)
{
var obj=document.form1 ;
var strNode=showModalDialog(url,obj,"dialogWidth:418px;dialogHeight:326px;status:no");

var ret_val = obj.retval.value;
if (ret_val!=-1 && typeof(ret_val)!='undefined')
{
var strNodeary=ret_val.split("#");
var strNodeID=strNodeary[0];
var strNodeName=strNodeary[1]
//循环写值1,2,3 aaa,bbb,ccc
alert(strNodeID + " " + strNodeName);
document.form1.txtNode.value=strNodeID;
document.form1.txtNode.value=strNodeName;
}

}


//-->
</script>

<body>
<form action="" method="get" name="form1">
<select name="txtNode" size="4" multiple style="width:400px"></select>
<input type=button value=" add " onclick="SelMutNode('selUser.htm')">
<input type="hidden" value="" name="retval">
</form>
</body>
</html>

===========================================================================

selUser.htm

<html>
<head>
</head>
<script language="JavaScript">
function Select()
{
var f = window.dialogArguments;
var IntcboLg=document.form1.selNode.length;
var strcboValue='';
var strcboText='';
for (var i=0;i<IntcboLg;i++ )
{
if (strcboValue=='')
{
strcboValue=strcboValue+document.form1.selNode.options(i).value;
strcboText=strcboText+document.form1.selNode.options(i).text;
}else
{
strcboValue=strcboValue+','+document.form1.selNode.options(i).value;
strcboText=strcboText+','+document.form1.selNode.options(i).text;
}
}
if (strcboValue!=''){
var Strreturn=strcboValue+'#'+strcboText;
f.retval.value=Strreturn;
window.returnValue=Strreturn
window.close();
}
}

</script>

<body>
<form action="" method="get" name="form1">
<select name="selNode" size="3" multiple style="width:400px">
<option value="1">aaa</option>
<option value="2">bbb</option>
<option value="3">ccc</option>
</select>
<input name="button" type=button onclick="Select()" value="¡¡Confirm¡¡">
</form>
</body>
</html>

上面代码显示已经取到值了,但是没有写入body.htm的select中,????
lauries 2004-07-15
  • 打赏
  • 举报
回复
net_lover(孟子E章) 老师:

我根据您提供的修改了部分脚本,可以提示不支持此对象
lauries 2004-07-15
  • 打赏
  • 举报
回复
net_lover(孟子E章) 老师:

您帮我改改这个文件,我花了几天时间了,实在是不知道了,只好求助于大家了!
我还没有学好这些!
孟子E章 2004-07-15
  • 打赏
  • 举报
回复
http://dev.csdn.net/develop/article/15/15113.shtm
孟子E章 2004-07-15
  • 打赏
  • 举报
回复
var strNode=showModalDialog(url,window,"dialogWidth:418px;dialogHeight:326px;status:no");



window.dialogArguments.document.form1.sel1.options[window.dialogArguments.document.form1.sel1.length] = new Option("txt","value",true,true)
window.returnValue=Strreturn
lauries 2004-07-15
  • 打赏
  • 举报
回复
测试没有成功,代码改写为一下:

====================================================
body.htm

<html><head></head>
<script language="JavaScript">
function SelMutNode(url)
{

var strNode=showModalDialog(url,0,"dialogWidth:418px;dialogHeight:326px;status:no");
if (strNode!=-1 && typeof(strNode)!='undefined')
{
var strNodeary=strNode.split("#")
var strNodeID=strNodeary[0]
var strNodeName=strNodeary[1]
document.form1.selNode.value=strNodeID;
document.form1.selNode.text=strNodeName;
}

}

//-->
</script>

<body>
<form action="" method="get" name="form1">
<select name="selNode" size="4" style="width:400px"></select>
<input type=button value=" add " onclick="SelMutNode('selUser.htm')">
</form>
</body></html>


====================================================
selUser.htm

<html><head></head>
<script language="JavaScript">
function Select()
{
var IntcboLg=document.form1.selNode.length
var strcboValue=''
var strcboText=''
for (var i=0;i<IntcboLg;i++ )
{
if (strcboValue=='')
{
strcboValue=strcboValue+','+document.form1.selNode.options(i).value
strcboText=strcboText+','+document.form1.selNode.options(i).text
}else
{
strcboValue=strcboValue+','+document.form1.selNode.options(i).value
strcboText=strcboText+','+document.form1.selNode.options(i).text
}
}
if (strcboValue!=''){
var Strreturn=strcboValue+'#'+strcboText
window.returnValue=Strreturn
window.close();
}
}

</script>

<body>
<form action="" method="get" name="form1">
<select name="selNode" size="3" multiple style="width:400px">
<option value="1">aaa</option>
<option value="2">bbb</option>
<option value="3">ccc</option>
</select>
<input name="button" type=button onclick="Select()" value="¡¡Confirm¡¡">
</form>
</body></html>

========================================
可是我测试结果,总是不能传递值?????
lauries 2004-07-15
  • 打赏
  • 举报
回复
测试ing

从此发现不大会javascript就玩完
内容概要:本文档是《Video for Linux Two API 规范》第0.24版的中文手册,系统性地介绍了V4L2(Video for Linux 2)的核心API及其使用方法。内容涵盖设备打开与关闭、能力查询、视频与音频输入输出管理、调谐器与调制器配置、视频标准选择、用户与扩展控制、数据格式协商、图像裁剪缩放、流控参数设置,以及多种I/O传输方式(如read/write、内存映射、用户指针等)。手册还详细定义了各类图像像素格式(如YUV、RGB、压缩格式)、缓冲区管理机制和ioctl控制接口,并附有编程示例和驱动开发指导,全面支持从基础捕获到高级视频处理的应用开发。; 适合人群:从事Linux平台下音视频驱动或应用程序开发的工程师,尤其是具备C语言基础并熟悉系统级编程的研发人员;适用于1-5年经验的嵌入式、多媒体或驱动开发者。; 使用场景及目标:① 开发基于摄像头、电视卡、视频采集卡等设备的Linux视频应用;② 实现视频采集、格式转换、流媒体传输、overlay叠加显示等功能;③ 调试和优化V4L2兼容硬件的驱动程序;④ 理解并运用ioctl接口进行设备控制与状态查询。; 阅读建议:建议结合实际硬件环境边学边练,优先通过VIDIOC_QUERYCAP确认设备能力,再逐步配置输入源、数据格式与I/O方式;注意各结构体字段的初始化与对齐要求,关注版本变更带来的兼容性问题,可参考附录示例代码进行调试验证。
数据集可视化效果见下方。 【数据集概况】 · 检测类别(中文):[自行车(bicycle), 公交车(bus), 汽车(car), 行人(person), 骑行者(rider), 踏板车(scooter), 卡车(truck)] · 训练集:1334 张 · 验证集:571 张 · 测试集:0 张 · 总计:1905 张 该数据集基于激光雷达点云生成的二维投影图像,真实还原了城市道路复杂交通场景下的多目标检测需求。图像呈现为典型的鸟瞰视角或前视视角的点云密度图,清晰捕捉到包括汽车、卡车、公交车、自行车、踏板车及行人等各类交通参与者在城市街道中的动态分布。数据集聚焦于高密度交通环境下的目标识别,具备高度的现实应用价值,可有效支撑智能交通系统、自动驾驶感知模块及城市安防监控等领域的技术开发。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 100 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.6355** mAP50-95 | 0.3557 Precision | 0.6116 Recall | 0.6067 train/box_loss | 1.3609 train/cls_loss | 1.1274 val/box_loss | 1.5101 val/cls_loss | 1.2023 【训练过程分析】 100 轮训练后 mAP50 仅 0.6355,模型收敛不充分。Loss 曲线前期下降后进入平台期,mAP 提升缓慢。mAP50-95 为 0.3557,定位精度同样偏低。 【模型性能评估】 Precision 0.6116、Recall ...
代码转载自:https://pan.quark.cn/s/a4b39357ea24 一、背景 对近一年以来(2024年H2~2025年H1),在部门非雇员OD管理中出现的主动管理、计划外离职等数据进行整理和复盘,提炼出OD招聘和管理中的经验教训,指导我们在选、用、育、留等各环节的改进,尤其在综合面试环节需要强化一些面试要素,持续优化面试环节的标准和管理过程中差异化的管理方案,提升OD的有效留存率。 二、问题/事件描述 部门近一年时间(2024年H2~2025年H1),出现约9例OD离职(含主动管理)情况,占比约7%,一定程度影响了OD的有效贡献率,本文对数据进行整理和提炼,识别风险因素,提炼共性原因,思考改进方案。 三、分析与对策 WXX - 基本数据:2002年生人,独生子女,流转资源,OD在岗4个月,985学校毕业,非软件专业(金融类专业) - 特征:自学习了一些Python就通过考试进入面试环节 - 面试环节复盘:综面环节第一次没有通过,但因业务需求紧迫,XM对人力补充比较迫切,再三沟通后,综面勉强通过 - 工作中结果:工作中与人交流不多,工作几个月攒到一些收入就准备离职出去玩。 主动离职 FXX - 基本数据:2002年生人,独生子女,流转资源,OD工作3个月,成绩较好,专业对口,父母为国企职工 - 特征:候选人沟通积极,思路清晰 - 面试环节复盘:综面意见较好,沟通比较积极,入职体检正常。 当时团队交付压力大,需要补充新鲜力量。 综面正常通过 - 工作中结果:入职后就经常生病(感冒等),工作后就隔三差五请假看病,整体出勤率低于50%时间,无法有效安排工作。 后主动管理 SXX - 基本数据:2001年生人,独生子女,OD工作2年,985大学环境专业,有一段时...

28,402

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧