/// /// /// /// Custom_BaseCode = function () { this.ApplicationPath = "../"; this.ControlID = "Window_Custom_BaseCode"; this.ParentElement = null; //要加入的父容器 var My = this; var KeyName = ""; var InputType = 0; //0只输入名称,1名称与代码 var cmdSave = null; var cmdAdd = null; var DataGrid1 = null; var datagrid1 = null; var EventHandler = new Sys.EventHandlerList(); //#region 加载 this.Load = function () { cmdSave = My.ControlID + "cmdSave"; cmdAdd = My.ControlID + "cmdAdd"; DataGrid1 = My.ControlID + "DataGrid1"; datagrid1 = new nblf.ui.DataGrid(DataGrid1); Init(); $("#" + cmdAdd, My.ParentElement).click(function () { AddRow(); }); $("#" + cmdSave, My.ParentElement).click(function () { Save(); }); $("#" + DataGrid1 + " span[CommandName]").live("click", function () { var CommandName = $(this).attr("CommandName"); var index = $(this).parentsUntil("tr").parent().attr("index"); //var model = datagrid1.Get_Model(index); if (CommandName == "cmdDel") { datagrid1.Del_Row(index); } }); } //#endregion //#region 初始化 function Init() { if (My.ParentElement == null) My.ParentElement = $(document.body); if ($("#" + My.ControlID, My.ParentElement).length > 0) return; var htmlString = new Sys.StringBuilder(); htmlString.append("
"); htmlString.append("
"); htmlString.append(""); htmlString.append(""); htmlString.append("
新增
"); htmlString.append("
"); My.ParentElement.append(htmlString.toString()); CreateDataGrid(); } //#endregion //#region 初始化DataGrid function CreateDataGrid() { Array.clear(datagrid1.Columns); var col = new nblf.ui.DataGridColumn(); col.HeaderText = "名称"; col.CellTemplate = ""; Array.add(datagrid1.Columns, col); if (InputType == 1) { col = new nblf.ui.DataGridColumn(); col.HeaderText = "代码"; col.CellTemplate = ""; Array.add(datagrid1.Columns, col); } col = new nblf.ui.DataGridColumn(); col.HeaderText = "是否使用"; col.CreateFieldCheckBox("IsUse", true); Array.add(datagrid1.Columns, col); col = new nblf.ui.DataGridColumn(); col.HeaderText = "操作"; col.Width = "100px"; col.CellTemplate = "删除"; Array.add(datagrid1.Columns, col); datagrid1.IsFixHeader = false; datagrid1.ShowIndexColumn = false; datagrid1.AllowPaging = false; datagrid1.Width = "100%"; datagrid1.SelectMode = nblf.ui.SelectMode.None; datagrid1.Init(); } //#endregion //#region 显示 this.Show = function (KeyName) { InputType = 0; CreateDataGrid(); this.KeyName = KeyName; Read(); $.fancybox({ 'autoScale': false, 'transitionIn': 'elastic', 'transitionOut': 'elastic', 'href': '#' + My.ControlID, 'onClosed': function () { OnSave(); } }, 0); } //#endregion //#region 显示 this.Show2 = function (KeyName) { InputType = 1; CreateDataGrid(); this.KeyName = KeyName; Read(); $.fancybox({ 'autoScale': false, 'transitionIn': 'elastic', 'transitionOut': 'elastic', 'href': '#' + My.ControlID, 'onClosed': function () { OnSave(); } }, 0); } //#endregion //#region 读取设置 function Read() { var param = new Object(); param.KeyName = My.KeyName; $.ajax({ url: My.ApplicationPath + "BaseData/BaseData.asmx/GetList_Sys_BaseCodeList", data: Sys.Serialization.JavaScriptSerializer.serialize(param), success: function (data) { datagrid1.DataBind(data.d); if (data.d.length == 0) AddRow(); } }); } //#endregion //#region 新增 function AddRow(){ var model = new Object(); model.Code = ""; model.Name = ""; model.IsUse = true; datagrid1.Add_Row(model); } //#endregion //#region 保存 function Save() { datagrid1.UpdateDataSource(); var param = new Object(); param.KeyName = My.KeyName; param.ListModel = datagrid1.DataSource; var error = ""; $(param.ListModel).each(function (i) { if (this.Name == "") { error = "第"+(i+1)+"行名称不能为空"; return false; } }); if (error != "") { alert(error); return; } if (InputType == 1) { $(param.ListModel).each(function (i) { if (this.Code == "") { error = "第" + (i + 1) + "行代码不能为空"; return false; } }); } if (error != "") { alert(error); return; } $.ajax({ url: My.ApplicationPath + "BaseData/BaseData.asmx/Save_Sys_BaseCodeList", data: Sys.Serialization.JavaScriptSerializer.serialize(param), success: function (data) { OnSave(); alert("保存成功"); $.fancybox.close(); } }); } //#endregion //#region 点击确定时触发 this.Save = function (handler) { EventHandler.addHandler('Save', handler); } //#endregion //#region 点击确定时触发 function OnSave() { var h = EventHandler.getHandler('Save'); if (h) h(My.KeyName); } //#endregion }