|
|
|
|
/// <reference path="../Scripts/MicrosoftAjax.js" />
|
|
|
|
|
/// <reference path="../Scripts/jquery.min.js" />
|
|
|
|
|
/// <reference path="fancybox/jquery.fancybox-1.3.4.js" />
|
|
|
|
|
/// <reference path="jquery.easyui.min.js" />
|
|
|
|
|
|
|
|
|
|
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("<div style='display: none;'>");
|
|
|
|
|
htmlString.append("<div id='" + My.ControlID + "' title='编辑' style='width: 500px; height: auto;' >");
|
|
|
|
|
htmlString.append("<table class='tableAll' style='width:98%;'><tr><td><span id='" + cmdAdd + "' style='color: #0000FF; cursor: pointer; text-decoration: underline;'><img src='../images/add.ico'>新增</span></td></tr>");
|
|
|
|
|
htmlString.append("<tr><td><div id='" + DataGrid1 + "' class='DataGridStyle'></div></td></tr>");
|
|
|
|
|
htmlString.append("<tr><td style='text-align: center'><input id='" + cmdSave + "' class='icon-save' type='button' value=' 保存' /></td></tr></table>");
|
|
|
|
|
htmlString.append("</div>");
|
|
|
|
|
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 = "<input ColName='Name' type='text' value='{Bind Name}' style='width:99%;text-align:center;' />";
|
|
|
|
|
Array.add(datagrid1.Columns, col);
|
|
|
|
|
|
|
|
|
|
if (InputType == 1) {
|
|
|
|
|
col = new nblf.ui.DataGridColumn();
|
|
|
|
|
col.HeaderText = "代码";
|
|
|
|
|
col.CellTemplate = "<input ColName='Code' type='text' value='{Bind Code}' style='width:99%;text-align:center;' />";
|
|
|
|
|
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 = "<span CommandName='cmdDel' style='color: #0000FF;cursor:pointer;text-decoration: underline;'>删除</span>";
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|