zoukankan      html  css  js  c++  java
  • js子窗体、父窗体方法互调

    var childWindow = $("#editFrame")[0].contentWindow;//获取子窗体的window对象.
    childWindow.subForm();

    $("#editFrame")得到frame

    [0].contentWindow//frame的子窗体,将JQUERY对象转化为DOM对象

    subForm();//字窗体定义的方法

    -----------------------------------------------------

    子窗体调用父窗体的方法

    function afterEdit(data) {
    if (data == "ok") {
    window.parent.afterEdit(data);
    }
    }

    -------------------------------------

    @model CZBK.ItcastOA.Model.RoleInfo
    
    @{
        Layout = null;
    }
    
    <!DOCTYPE html>
    
    <html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <title>编辑角色信息</title>
        <script src="~/Scripts/jquery-1.7.1.min.js"></script>
        <script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
        <script type="text/javascript">
            function subForm() {
                $("#editForm").submit();
            }
            function afterEdit(data) {
                if (data == "ok") {
                    window.parent.afterEdit(data);
                }
            }
        </script>
    </head>
    <body>
        @using (Ajax.BeginForm("EditRoleInfo", "RoleInfo", new { }, new AjaxOptions() { HttpMethod = "post", OnSuccess = "afterEdit" }, new {id="editForm"}))
        {
            @Html.ValidationSummary(true)
        
            <fieldset>
                <legend>RoleInfo</legend>
        
                @Html.HiddenFor(model => model.ID)
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.RoleName, "角色名称")
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.RoleName)
                    @Html.ValidationMessageFor(model => model.RoleName)
                </div>
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.DelFlag)
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.DelFlag)
                    @Html.ValidationMessageFor(model => model.DelFlag)
                </div>
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.SubTime)
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.SubTime)
                    @Html.ValidationMessageFor(model => model.SubTime)
                </div>
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.Remark)
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.Remark)
                    @Html.ValidationMessageFor(model => model.Remark)
                </div>
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.ModifiedOn)
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.ModifiedOn)
                    @Html.ValidationMessageFor(model => model.ModifiedOn)
                </div>
        
                <div class="editor-label">
                    @Html.LabelFor(model => model.Sort)
                </div>
                <div class="editor-field">
                    @Html.EditorFor(model => model.Sort)
                    @Html.ValidationMessageFor(model => model.Sort)
                </div>
        
              
            </fieldset>
        }
        
        <div>
            @Html.ActionLink("Back to List", "Index")
        </div>
    </body>
    </html>
    子窗体
    @{
        Layout = null;
    }
    
    <!DOCTYPE html>
    
    <html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <title>角色管理</title>
         <link href="~/Content/themes/default/easyui.css" rel="stylesheet" />
        <link href="~/Content/themes/icon.css" rel="stylesheet" />
        <script src="~/Scripts/jquery-1.7.1.min.js"></script>
        <script src="~/Scripts/jquery.easyui.min.js"></script>
        <script src="~/Scripts/easyui-lang-zh_CN.js"></script>
        <script src="~/Scripts/datapattern.js"></script>
        <script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
          <script type="text/javascript">
              $(function () {
                  loadData();
                  $("#addDiv").css("display", "none");
                  $("#editDiv").css("display", "none");
                 
                
              });
              function loadData(pars) {
                  $('#tt').datagrid({
                      url: '/RoleInfo/GetRoleInfo',
                      title: '角色数据表格',
                       700,
                      height: 400,
                      fitColumns: true, //列自适应
                      nowrap: false,
                      idField: 'ID',//主键列的列明
                      loadMsg: '正在加载角色的信息...',
                      pagination: true,//是否有分页
                      singleSelect: false,//是否单行选择
                      pageSize: 5,//页大小,一页多少条数据
                      pageNumber: 1,//当前页,默认的
                      pageList: [5, 10, 15],
                      queryParams: pars,//往后台传递参数
                      columns: [[//c.UserName, c.UserPass, c.Email, c.RegTime
                          { field: 'ck', checkbox: true, align: 'left',  50 },
                          { field: 'ID', title: '编号',  80 },
                          { field: 'RoleName', title: '角色名称',  120 },
                           { field: 'Sort', title: '排序',  120 },
                            { field: 'Remark', title: '备注',  120 },
                          {
                              field: 'SubTime', title: '时间',  80, align: 'right',
                              formatter: function (value, row, index) {
                                  return (eval(value.replace(//Date((d+))//gi, "new Date($1)"))).pattern("yyyy-M-d");
                              }
                          }
                      ]],
                      toolbar: [{
                          id: 'btnDelete',
                          text: '删除',
                          iconCls: 'icon-remove',
                          handler: function () {
    
                              deleteInfo();
                          }
                      }, {
                          id: 'btnAdd',
                          text: '添加',
                          iconCls: 'icon-add',
                          handler: function () {
    
                              addInfo();
                          }
                      }, {
                          id: 'btnEdit',
                          text: '编辑',
                          iconCls: 'icon-edit',
                          handler: function () {
    
                              eidtInfo();
                          }
                      }],
                  });
              }
              //编辑用户信息
              function eidtInfo() {
                  var rows = $('#tt').datagrid('getSelections');
                  if (rows.length != 1) {
                      //alert("请选择要修改的商品!");
                      $.messager.alert("提醒", "请选择要编辑的1条记录!", "error");
                      return;
                  }
                 // $.post("/UserInfo/GetUserInfoModel", { "id": rows[0].ID }, function (data) {
                      //if (data.msg == "ok") {
                          //$("#txtUName").val(data.serverData.UName);
                          //$("#txtUPwd").val(data.serverData.UPwd);
                          //$("#txtRemark").val(data.serverData.Remark);
                          //$("#txtSort").val(data.serverData.Sort);
                          //$("#txtSubTime").val(ChangeDateFormat(data.serverData.SubTime));
                          //$("#txtDelFlag").val(data.serverData.DelFlag);
                  //$("#txtId").val(data.serverData.ID);
                  $("#editFrame").attr("src", "/RoleInfo/ShowEditInfo/?id=" + rows[0].ID);
                 $("#editDiv").css("display", "block");
    
                          $('#editDiv').dialog({
                              title: "编辑角色信息",
                               300,
                              height: 350,
                              collapsible: true,
                              resizable: true,
                              modal: true,
                              buttons: [{
                                  text: '确定',
                                  iconCls: 'icon-ok',
                                  handler: function () {
                                      //$("#editForm").submit();//提交表单
                                      var childWindow = $("#editFrame")[0].contentWindow;//获取子窗体的window对象.
                                      childWindow.subForm();
                                  }
                              }, {
                                  text: '取消',
                                  handler: function () {
                                      $('#editDiv').dialog('close');
                                  }
                              }]
                          });
                 
    
              }
              //修改完成以后调用该方法
              function afterEdit(data) {
                  if (data == "ok") {
                      $('#editDiv').dialog('close');
                      $('#tt').datagrid('reload');
                  } else {
                      $.messager.alert("提醒", "修改数据错误!!", "error");
                  }
              }
    
    
              //添加信息
              function addInfo() {
                  $("#addDiv").css("display", "block");
                  $('#addDiv').dialog({
                      title: "添加角色信息",
                       300,
                      height: 300,
                      collapsible: true,
                      resizable: true,
                      modal: true,
                      buttons: [{
                          text: '确定',
                          iconCls: 'icon-ok',
                          handler: function () {
                              $("#addForm").submit();//提交表单
                          }
                      }, {
                          text: '取消',
                          handler: function () {
                              $('#addDiv').dialog('close');
                          }
                      }]
                  });
    
              }
              //添加完成以后调用该方法
              function afterAdd(data) {
                  if (data == "ok") {
                      $("#addForm input").val("");
                      $('#addDiv').dialog('close');
                      $('#tt').datagrid('reload');
                  } else {
                      $.messager.alert("提示", "添加失败", "error");
                  }
              }
              //删除用户数据
              function deleteInfo() {
                  var rows = $('#tt').datagrid('getSelections');
                  if (!rows || rows.length == 0) {
                      //alert("请选择要修改的商品!");
                      $.messager.alert("提醒", "请选择要删除的记录!", "error");
                      return;
                  }
                  $.messager.confirm("提示", "确定要删除该记录?", function (r) {
                      if (r) {
                          var strId = "";
                          for (var i = 0; i < rows.length; i++) {
                              strId = strId + rows[i].ID + ",";//1,2,3,
                          }
                          strId = strId.substr(0, strId.length - 1);
                          $.post("/RoleInfo/DeleteRoleInfo", { "strId": strId }, function (data) {
                              if (data == "ok") {
                                  $('#tt').datagrid('clearSelections');
                                  $('#tt').datagrid('reload');
                                  //loadData();
                              } else {
                                  $.messager.alert("提醒", "删除的记录失败!", "error");
                              }
                          });
                      }
                  });
              }
    
              //将序列化成json格式后日期(毫秒数)转成日期格式
              function ChangeDateFormat(cellval) {
                  var date = new Date(parseInt(cellval.replace("/Date(", "").replace(")/", ""), 10));
                  var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
                  var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
                  return date.getFullYear() + "-" + month + "-" + currentDate;
              }
        </script>
    </head>
    <body>
         <div>
            
               <table id="tt" style=" 700px;" title="标题,可以使用代码进行初始化,也可以使用这种属性的方式" iconcls="icon-edit">
        </table>
        </div>
        <!---------------添加用户信息--------------------->
        <div id="addDiv">
            @using(Ajax.BeginForm("AddRoleInfo", "RoleInfo", new { }, new AjaxOptions() {HttpMethod="post", OnSuccess="afterAdd"}, new {id="addForm"})){
            <table>
                <tr><td>角色名称</td><td><input type="text" name="RoleName" /></td></tr>
                 <tr><td>排序</td><td><input type="text" name="Sort" /></td></tr>
                 <tr><td>备注</td><td><input type="text" name="Remark" /></td></tr>
         
    
            </table>
            }
        </div>
            <!---------------添加用户信息结束--------------------->
    
    
            <!---------------修改用户信息--------------------->
         <div id="editDiv">
             <iframe id="editFrame" scrolling="no" width="100%" height="100%" frameborder="0"></iframe>
           @* @using(Ajax.BeginForm("EditUserInfo", "UserInfo", new { }, new AjaxOptions() {HttpMethod="post", OnSuccess="afterEdit"}, new {id="editForm"})){
                <input type="hidden" name="SubTime" id="txtSubTime" />
                <input type="hidden" name="DelFlag" id="txtDelFlag" />
                <input type="hidden" name="ID" id="txtId" />
            <table>
                <tr><td>用户名</td><td><input type="text" name="UName" id="txtUName" /></td></tr>
                 <tr><td>密码</td><td><input type="text" name="UPwd" id="txtUPwd" /></td></tr>
                 <tr><td>备注</td><td><input type="text" name="Remark" id="txtRemark" /></td></tr>
                 <tr><td>排序</td><td><input type="text" name="Sort" id="txtSort" /></td></tr>
    
            </table>
            }*@
        </div>
    
            <!---------------修改用户信息结束--------------------->
    </body>
    </html>
    主窗体
  • 相关阅读:
    python语法基础-并发编程-协程-长期维护
    python语法基础-并发编程-线程-其他
    python语法基础-并发编程-线程-线程池
    python语法基础-并发编程-线程-各种锁以及队列
    python语法基础-并发编程-线程-线程理论和线程的启动
    python语法基础-并发编程-进程-其他
    python语法基础-并发编程-进程-进程池以及回调函数
    python语法基础-并发编程-进程-进程锁和进程间通信
    python语法基础-并发编程-进程-进程理论和进程的开启
    二、提高期(Upping the Ante)
  • 原文地址:https://www.cnblogs.com/ecollab/p/6160306.html
Copyright © 2011-2022 走看看