Asp.net可通过脚本在页面间传递数据 

分类: asp.net技巧   出处:iocblog整理  更新时间:2008-07-11   添加到收藏  

  新建一个 webform1.aspx页面,添加一个textbox和一个button控件,在页面的page_load里写下注册客户端脚本的语句:
  
  private void page_load(object sender, system.eventargs e)
  {
  // 在此处放置用户代码以初始化页面
  if(!page.isclientscriptblockregistered("clientscript"))
  {
  stringbuilder sbscript = new stringbuilder();
  sbscript.append("<script> ");
  sbscript.append("function openwin(){ ");
  sbscript.append("var str=window.showmodaldialog('webform2.aspx',document.form1.txtwndname.value) ");
  sbscript.append("if(str!=null) document.form1.txtwndname.value=str ");
  sbscript.append("} </script> ");
  string script = sbscript.tostring();
  registerclientscriptblock("clientscript",script);
  }
  this.btnopen.attributes.add("onclick","openwin()");
  }
  
  新建一个webform2.aspx页面,放入两个框架:
  
  <frameset rows="0,*">
  
  <frame src="about:blank"
  
  <frame src="webform3.aspx">
  
  </frameset>
  
  新建一个webform3.aspx页面,在page_load里写下一下注册脚本的语句:
  
  private void page_load(object sender, system.eventargs e)
  {
  // 在此处放置用户代码以初始化页面
  if(page.ispostback)
  {
  stringbuilder sbscript = new stringbuilder();
  sbscript.append("<script> ");
  sbscript.append("window.parent.returnvalue='" + this.textbox1.text + "' ");
  sbscript.append("window.parent.close() ");
  sbscript.append("</script> ");
  
  string script = sbscript.tostring();
  
  if(!page.isclientscriptblockregistered("clientscript"))
  {
  registerclientscriptblock("clientscript",script);
  }
  }
  }
  [来源www.iocblog.net]
  通过javascript的弹出窗口实现数据传递。



文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。