我在写ASP.NET程序时,经常会遇见需要弹出窗口,让用户选择一个参数,然后回到原来的界面继续运行的情况,看到有的人用类似日期控制哪样来做,我想知道还有没有更好的办法?

yinanxiucai 2009-03-31 08:01:55
这样做需要写很多的JSCRIPT代码,而且和ASP.NET的把界面和代码分开的思路也不想符,我想知道大家是如何处理这种情况的,请说说你们的处理思路,越细越好!
谢谢!
...全文
63 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hy_lihuan 2009-03-31
  • 打赏
  • 举报
回复
现在的一些div弹出框也可以使用其他页面的,只是说传输会麻烦一些
yinanxiucai 2009-03-31
  • 打赏
  • 举报
回复
谢谢回复,三楼的能懂,四楼的不懂,容我再细研究一下吧
netboygg 2009-03-31
  • 打赏
  • 举报
回复
页面1的代码也写在Page_Load事件里
netboygg 2009-03-31
  • 打赏
  • 举报
回复
在后台写代码:如下

页面1
if (!IsClientScriptBlockRegistered("clientScript"))
{
strScript = "<script>\n";
strScript += "function OpenWin(){\n";
strScript += "var str=window.showModalDialog('WebForm2.aspx',document.Form1.TextBox28.value,'help:no')\n";
strScript += "if(str!=null) document.Form1.TextBox28.value=str\n";
strScript += "}\n";
strScript += "</script>\n";
RegisterClientScriptBlock("clientScript", strScript);
}
Button1.Attributes.Add("onclick", "OpenWin()");//弹出新窗体的按钮


页面2

protected void Page_Load(object sender, EventArgs e)
{
if(IsPostBack)
{
string strScript = "<script>\n";
strScript += "window.parent.returnValue='" + TextBox1.Text.Replace("'", "\'") + "'\n";
strScript += "window.parent.close()\n";
strScript += "</script>\n";
if (!IsClientScriptBlockRegistered("clientScript"))
RegisterClientScriptBlock("clientScript", strScript);
}
else
{
MyBody.Attributes.Add("onload", "document.Form1.TextBox1.value=window.parent.dialogArguments");
}
}

sxmonsy 2009-03-31
  • 打赏
  • 举报
回复
A页面:
<input name="LogName" type="text" class="tab01" size="12" readonly="" onClick="window.open('/B.htm','','width=525,height=370,left=300,top=200')">
B页面:
function ok(b)
{
opener.document.form1.LogName.value=bbb.innerText;
window.close();
}
//-->
</script>
<a href="#" onclick="ok(this)">返回的值</a>
netboygg 2009-03-31
  • 打赏
  • 举报
回复
用js 弹出新窗体 再传回参数

62,267

社区成员

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

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

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

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