asp_异步_修改_如何实现父子页面之间的相互交互

原创 2013年12月03日 17:14:22

前面的实例中, 是将整个修改的页面全部放在一个页面中,一般在开发中,最好将二者至于两个界面中。


首先在修改的表单的设计代码处:在div中添加一个iframe:

 <div id="editDiv">
         <iframe id="frmEdit" frameborder="0" width="100%" src="javascript:void(0)">
            
         </iframe>

</div>


重新创建一个ShowEdit.aspx:

<script src="../js/jquery-easyui-1.3.1/jquery-1.8.0.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        function subFrm() {
            //走异步提交代码
            $.post("Edit.ashx", $("#form1").serializeArray(), function (data) {
                if (data == "ok") {
                    //告诉父容器,我活干完了,关闭对话框,刷新列表
                    window.parent.window.afterEditSucess();
                }
            });
        }

    </script>

<body>
    <form id="form1" runat="server">
    <div>
    <input type="hidden" name="hidId" value="<%= HidId %>"/>
        <table>
       <tr>
         <td>新闻标题</td><td><input type="text" name="txtEditTitle" id="txtEditTitle" value="<%= Title %>"/></td>
       </tr>
       <tr>
         <td>新闻发布人</td><td><input type="text" name="txtEditPeople" id="txtEditPeople" value="<%= People %>"/></td>
       </tr>
       
     </table>
    </div>
    </form>
</body>


ShowEdit.aspx.cs:

public partial class ShowEdit : System.Web.UI.Page
    {
        public string HidId { get; set; }
        public string Title { get; set; }
        public string People { get; set; }
        protected void Page_Load(object sender, EventArgs e)
        {
            int id = int.Parse(Request["id"]??"0");
            BLL.HKSJ_Main mainServer = new BLL.HKSJ_Main();
            var item = mainServer.GetModel(id);
            HidId = item.ID.ToString();


            Title = item.title;


            People = item.people;
        }
    }


如下图:在提交修改的表单的代码处,进行如下操作:

 //提交修改的表单
         function subEditFrom(){
           //将修改的表单提交到后台
//           var editFrmData=$("#editFrm").serializeArray();
//           $.post("Edit.ashx",editFrmData,function(data){
//              if(data=="OK")
//              {
//                   //如果后台返回成功
//           //关闭对话框
//            $("#editDiv").dialog("close");
//           //刷新列表
//           initTableList();
//              }
//              else
//              {
//                 alert(data);
//              }
//           });


              //让子容器的表单提交


              //jq对象转化为dom对象
              //contentWindow可以拿到iframe标签的对象
              $("#frmEdit")[0].contentWindow.subFrm();
           
          
         }

 //由子容器调用的方法
        function afterEditSuccess(){
            //关闭对话框
            $("#editDiv").dialog("close");
           //刷新列表
           initTableList();
        }

相关文章推荐

layer.iframe父子页面之间的数据交互(1)

layer弹出层弹出一个HTML页面是很常用的,父子页面之间的页面交互是很重要的一项小技术,下面我就简单的阐述一下我对这个小技术的一点小心得…..一,父页面传值到子页面,两种方式,1.layer的弹出...

父子对话框之间的交互

  • 2008年11月19日 21:09
  • 9.63MB
  • 下载

flex父子页面交互实现(触发事件)

昨天使用了方法回调的方式实现的,今天写了个以手动触发自定义事件,在分派回的事件流中携带交互数据对象的方式实现父子页面交互 首先自定义一个事件,myEvent.as文件 package { i...
  • flygoa
  • flygoa
  • 2012年08月23日 00:07
  • 930

flex4 父子页面交互实现(触发事件)

昨天使用了方法回调的方式实现的,今天写了个以手动触发自定义事件,在分派回的事件流中携带交互数据对象的方式实现父子页面交互 首先自定义一个事件,myEvent.as文件 [html] v...

flex4 父子页面数据交互实现(回调函数)

在网上看到一个父子页面数据交互的例子,自己也写了写。 首先父页面test.mxml ...

模态对话框+父子窗口交互+后台数据处理+刷新父页面

在网上看了大把的跟模态窗口相关的技术文档。百家争鸣,各有争议,经过自己的摸索总结,终于走出了一条适合自己的有个人特色的解决道路,在此跟大家分享。    模态窗口使用在asp.net中应该算比较常见,经...

Web页面父子窗口交互总结

一、主要四种方式          类型名称              子窗口引用父窗口                  父窗口引用子窗口 ...

父子頁面交互操作

一、在父界面寫一個JS方法打開並獲取子界面的信息顯示到父界面中:     function OpenNewWindow() {         //TestBack指要打開的子界面   ...

struts2使用ajax实现页面和action之间通过json数据交互

要在struts2中使用json数据交互,需要导入以下包 当然,struts2应用核心包也要导入...

java程序中前后台交互的两种实现方式以及页面之间的跳转

java 前后台交互的两种方式以及页面之间的跳转实现
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:asp_异步_修改_如何实现父子页面之间的相互交互
举报原因:
原因补充:

(最多只允许输入30个字)