ASP.NET求个JS实现子窗体与父窗体传值的示例...高分.....在线等...

lgaimin 2009-04-23 09:08:20
具体需求:
1.父窗体上面有个button.是用来上传附件的..
2.点击button,弹出子窗体,子窗体里面包含两个控件,一个上传的控件.和一个button..---上传
3.当点击子窗体里面的按钮时候将文件上传到网站的某个文件夹下面..再将文件的相对路径返回给父窗体的一个<a href="">标签里面,在父窗体能够实现打开或者下载该附件的功能..其实<a>可以基本实现..主要就是传值...希望大哥大姐JS牛的人帮我下忙...JS我有点基础.但是很多都忘记了...谢谢了...


CSDN发帖页面的那个上传功能也可以..唯一的就是将值传到父窗体里面用个东西接收..谢谢了...在线等...
...全文
425 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgaimin 2009-04-24
  • 打赏
  • 举报
回复
可能是我没说清楚.补充一下:
点击页面上的按钮.将一个labelOne的值传到子窗体,子窗体接收到这个值,再上传的时候需要将这个值作为ID,上传完之后再将FileUpload1文本框里面的路径返回给父窗体的labelTwo.text就可以了..
李世垚 2009-04-24
  • 打赏
  • 举报
回复
上面有答案了 我就不重复了 注意2点
1 如果是iframe 马上子窗口的parent是父窗口 如果是新窗口那么子窗口的opener是父窗口
2 父窗口可以通过var a=window.open(...)得到新窗口的句柄 然后 a.<新窗口的函数>即可
少冲 2009-04-24
  • 打赏
  • 举报
回复
传值有N种方式,你说的这个,直接设置一个全局变量就OK了。或者继承一个基类窗体。
yyldir 2009-04-24
  • 打赏
  • 举报
回复
上面有答案了
wuyq11 2009-04-23
  • 打赏
  • 举报
回复
a.aspx
function OpenUpload(ti)
{
var url = "upload.aspx";
win=window.open(url,"upload","width=600,height=450,left=0,top=0,scrollbars=1,status=0");
win.focus();
}
function GetPhoto(strName)
{
var p1 = window.document.getElementById("txtPhoto");
p1.value = strName;

}
upload.aspx
Response.Write("<script language='javascript'>window.opener.GetPhoto('a.jpg');</script>");
Response.Write("<script language='javascript'>window.close();</script>");
wxg22526451 2009-04-23
  • 打赏
  • 举报
回复
参考如下,模态窗体里写对应的上传文件和回传值代码
JS模态窗体 window.returnvalue 
有时候,我们需要使用模态窗体(更多的是模拟模态窗体,div + iframe),下面是一个使用了ASP.NET AJAX 下的模态窗体的2个页面交互的示例。
简单地代码片断:

protected void Button1_Click(object sender, EventArgs e)
{
string MyScript = "var returnStr = window.showModalDialog('Default2.aspx?name="+TextBox1.Text+"',
window, '') ;";
MyScript += "document.getElementById('TextBox1').value=returnStr;";
if (!Page.ClientScript.IsClientScriptBlockRegistered("OneScript")){
ScriptManager.RegisterClientScriptBlock(UpdatePanel1, UpdatePanel1.GetType(), "OneScript",
MyScript,true);
}
}由于使用了ScriptManager ,所以在注册脚本块的时候,不是Page注册。这里,我们声明了 "var rturnStr" ,它就
可以用来接收
子窗体的返回值,子窗体的返回值可以有多种形式的.
返回:

protected void Button1_Click(object sender, EventArgs e)
{
string MyScript = "window.returnValue='"+TextBox1.Text+"';";
MyScript += "window.close();";
if (!Page.ClientScript.IsClientScriptBlockRegistered("OneScript")) {
Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "OneScript", MyScript, true);
}
}
coodd 2009-04-23
  • 打赏
  • 举报
回复
这和一个窗体有区别吗,在子窗体通过opener.document访问父窗体的元素,在父窗体通过定义 var newwin =
window.open(……),用newwin.document访问子窗体的元素。

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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