当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Asp.net中实现从弹出窗口中选择值

ASP.NET
在C#中导入WebBrowser控件,生成具有强名称的程序集
Asp.Net中的脚本回调和Server.Transfer页面传值
暂时性的解决datagrid控件数据绑定时候xxx字段不属于xxx表的错误
http://www.donews.net/yangwl/archive/2004/10/17/136872.aspx
Some tips for using visual studio .net
Grasshopper简介(节选)
ORACLE 常用的SQL语法和数据对象
[DNN学习所得]让IE也能实现解压缩功能(提供演示源码下载)
学习笔记之Microsoft Windows服务
关于XML:以对象模型为中心
P&P Enterprise Library Extensions
简易的字符替换,可以用于用户自我介绍输入框,简单新闻回复& etc.
缩略图多路径多格式保存
"关机/休眠/重启/注销"的类
[DNN功能]自己动手做语言包
处理WinForm多线程程序时的陷阱
获得光标在多行textbox中的行与列的函数
ADO.NET 和 ADO 的比较
vb.net类的封装,继承,多态,抽象之一
Display XML in AxSHDocVw.AxWebBrowser

ASP.NET 中的 Asp.net中实现从弹出窗口中选择值


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 174 ::
收藏到网摘: n/a

  在Asp.net中,从A页面中弹出B页面,在B页面中选择数据后,关闭并将数据更新到A页面,是一种常用的方式。只是我对Javascript不熟悉,所以捣鼓了一下午,终于有了一点成绩。

  测试项目有两个页面:Default.aspx及Default2.aspx,在Default.aspx页面上有一个TextBox1及一个Button1,Button1用于触发Default2.aspx,TextBox1用于接收从子页面传回的值。

  Button1的代码如下:

以下为引用的内容:
  StringBuilder s = new StringBuilder();
  s.Append(" ");
  Type cstype = this.GetType();
  ClientScriptManager cs = Page.ClientScript;
  string sname = "lt";
  if (!cs.IsStartupScriptRegistered(cstype, sname))
  cs.RegisterStartupScript(cstype, sname, s.ToString());

  Default2.aspx页面内有一个CheckBoxList1及一个Button1,Button1执行返回选择的CheckBoxList1的值,并将当前页面关闭。

  代码如下:

以下为引用的内容:
  protected void Button1_Click(object sender, EventArgs e)
  {
  StringBuilder s = new StringBuilder();
  s.Append(" ");
  Type cstype = this.GetType();
  ClientScriptManager cs = Page.ClientScript;
  string csname = "ltype";
  if (!cs.IsStartupScriptRegistered(cstype, csname))
  cs.RegisterStartupScript(cstype, csname, s.ToString());
  }
  private string GetSelectValue()
  {
  string rvalue = "";
  for (int i = 0; i < this.CheckBoxList1.Items.Count; i++)
  {
  if (this.CheckBoxList1.Items[i].Selected)
  {
  if (rvalue == "")
  rvalue += this.CheckBoxList1.Items[i].Text;
  else
  rvalue += "," + this.CheckBoxList1.Items[i].Text;
  }
  }
  return rvalue;
  }

  此时执行程序,在Default2.aspx中不会关闭且不能传回值,很重要的一点:

  在head中,加入这一行: