|
|
|
|
|
|
|
|
|
|
|
|
|
|
function TGridCommon(id, formName, headArgs, widthArgs, alignArgs, sortArgs, typeArgs) {
|
|
|
|
|
var self = this;
|
|
|
|
|
var gridObj; //grid object
|
|
|
|
|
this.formName = formName; //form name
|
|
|
|
|
this.id = id; //TGridCommon object id
|
|
|
|
|
this.totalPageCount; //Total Count
|
|
|
|
|
this.responseUrl; //Ajax Request Url
|
|
|
|
|
this.over = false;
|
|
|
|
|
this.menu = null; //Menu object
|
|
|
|
|
this.pageShowCount = 15;
|
|
|
|
|
var shield; //
|
|
|
|
|
this.headArgs = headArgs; //Header
|
|
|
|
|
this.widthArgs = widthArgs; //Width
|
|
|
|
|
this.alignArgs = alignArgs; //Align
|
|
|
|
|
this.sortArgs = sortArgs; //Sort
|
|
|
|
|
this.typeArgs = typeArgs; //Type
|
|
|
|
|
this.attHeaderArgs = [];
|
|
|
|
|
this.skin;
|
|
|
|
|
this.imageUrl;
|
|
|
|
|
this.page;
|
|
|
|
|
this.pageSwitch;
|
|
|
|
|
this.condition;
|
|
|
|
|
this.subGridArgs = [];
|
|
|
|
|
this.request;
|
|
|
|
|
this.sourceType;
|
|
|
|
|
this.openUrl;
|
|
|
|
|
this.openType;
|
|
|
|
|
this.openSet;
|
|
|
|
|
this.isDoubleClick = false;
|
|
|
|
|
this.isShowHeader = false;
|
|
|
|
|
this.searchVal = "";
|
|
|
|
|
this.multipleSearchVal = "";
|
|
|
|
|
this.isHiddenColumn = false;
|
|
|
|
|
this.isOnEditCell = false;
|
|
|
|
|
this.isOnCheckBox = false;
|
|
|
|
|
this.isDBClickEvent = false;
|
|
|
|
|
this.isOnEditCell = false;
|
|
|
|
|
this.hiddenIndex;
|
|
|
|
|
this.loadafter = false;
|
|
|
|
|
this.pagerName;
|
|
|
|
|
this.pagerInfo;
|
|
|
|
|
this.isAttchHeader = false;
|
|
|
|
|
this.isSort = false;
|
|
|
|
|
this.sortValue;
|
|
|
|
|
this.sortType;
|
|
|
|
|
//find object
|
|
|
|
|
this.$ = function (id) {
|
|
|
|
|
return document.getElementById(id);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//initialization grid
|
|
|
|
|
this.initGrid = function () {
|
|
|
|
|
self.gridObj = new dhtmlXGridObject(self.id);
|
|
|
|
|
self.gridObj.setImagePath(self.imageUrl);
|
|
|
|
|
self.gridObj.setSkin(self.skin);
|
|
|
|
|
self.gridObj.setHeader(self.headArgs.toString());
|
|
|
|
|
self.gridObj.setInitWidths(self.widthArgs.toString());
|
|
|
|
|
self.gridObj.setColAlign(self.alignArgs.toString());
|
|
|
|
|
self.gridObj.setColSorting(self.sortArgs.toString());
|
|
|
|
|
self.gridObj.setColTypes(self.typeArgs.toString());
|
|
|
|
|
if (self.isShowHeader) {
|
|
|
|
|
self.gridObj.setNoHeader(self.isShowHeader);
|
|
|
|
|
}
|
|
|
|
|
if (self.isHiddenColumn) {
|
|
|
|
|
self.gridObj.setColumnHidden(self.hiddenIndex, true);
|
|
|
|
|
}
|
|
|
|
|
if (self.isAttchHeader) {
|
|
|
|
|
self.gridObj.attachHeader(self.attHeaderArgs);
|
|
|
|
|
}
|
|
|
|
|
self.gridObj.enableAlterCss("odd_row", "even_row");
|
|
|
|
|
self.gridObj.init();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.after = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.sortEventFun = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.reload = function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
self.bind();
|
|
|
|
|
};
|
|
|
|
|
//grid bind
|
|
|
|
|
this.bind = function () {
|
|
|
|
|
|
|
|
|
|
//self.responseUrl + "?handle=list&i_page&show_page="+self.pageShowCount.toString()+"&cur_page=1&condition="+self.condition
|
|
|
|
|
//self.responseUrl + "?handle=list"+self.condition
|
|
|
|
|
|
|
|
|
|
if (self.loadafter) {
|
|
|
|
|
self.gridObj.load(self.request, self.after, self.sourceType);
|
|
|
|
|
} else {
|
|
|
|
|
self.gridObj.load(self.request, self.sourceType);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
this.setAttachHeader = function (args) {
|
|
|
|
|
self.attHeaderArgs = args;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.loadinfo = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.showHeader = function (isShow) {
|
|
|
|
|
self.isShowHeader = isShow;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.setSortValue = function (sort, type) {
|
|
|
|
|
self.sortValue = sort;
|
|
|
|
|
self.sortType = type;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.hiddenColumn = function (index, isHidden) {
|
|
|
|
|
self.isHiddenColumn = isHidden;
|
|
|
|
|
self.hiddenIndex = index;
|
|
|
|
|
}
|
|
|
|
|
//json load request url
|
|
|
|
|
this.setRequest = function (request) {
|
|
|
|
|
self.request = request;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.getRequest = function () {
|
|
|
|
|
return self.request;
|
|
|
|
|
};
|
|
|
|
|
//source type
|
|
|
|
|
this.setSourceType = function (strSourceType) {
|
|
|
|
|
self.sourceType = strSourceType;
|
|
|
|
|
};
|
|
|
|
|
//skin
|
|
|
|
|
this.setSkin = function (strSkin) {
|
|
|
|
|
self.skin = strSkin;
|
|
|
|
|
};
|
|
|
|
|
//imageUrl
|
|
|
|
|
this.setImageUrl = function (strImageUrl) {
|
|
|
|
|
self.imageUrl = strImageUrl;
|
|
|
|
|
};
|
|
|
|
|
//Response Url
|
|
|
|
|
this.setResponseUrl = function (url) {
|
|
|
|
|
self.responseUrl = url;
|
|
|
|
|
};
|
|
|
|
|
this.setPageShowCount = function (ShowCount) {
|
|
|
|
|
self.pageShowCount = ShowCount;
|
|
|
|
|
}
|
|
|
|
|
//
|
|
|
|
|
this.setIsPage = function (isOpen) {
|
|
|
|
|
self.pageSwitch = isOpen;
|
|
|
|
|
};
|
|
|
|
|
//refresh grid
|
|
|
|
|
this.refresh = function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
};
|
|
|
|
|
//load sub grid
|
|
|
|
|
this.clickShowSubGrid = function (subGridObj) {
|
|
|
|
|
self.gridObj.attachEvent("onRowDblClicked", function (rId, cInd) {
|
|
|
|
|
subGridObj.bind();
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.getGridObj = function () {
|
|
|
|
|
return self.gridObj;
|
|
|
|
|
}
|
|
|
|
|
this.setSubGrid = function (subGrid) {
|
|
|
|
|
self.subGridArgs = subGrid;
|
|
|
|
|
};
|
|
|
|
|
//window open url
|
|
|
|
|
this.setOpenUrl = function (openUrl) {
|
|
|
|
|
self.openUrl = openUrl;
|
|
|
|
|
};
|
|
|
|
|
//window open type
|
|
|
|
|
this.setOpenType = function (strType) {
|
|
|
|
|
self.openType = strType;
|
|
|
|
|
};
|
|
|
|
|
//window open set
|
|
|
|
|
this.setOpenSet = function (strSet) {
|
|
|
|
|
self.openSet = strSet;
|
|
|
|
|
};
|
|
|
|
|
this.dbclickPop = function () {
|
|
|
|
|
//set status
|
|
|
|
|
self.isDoubleClick = true;
|
|
|
|
|
self.gridObj.attachEvent("onRowDblClicked", function (rId, cInd) {
|
|
|
|
|
|
|
|
|
|
window.open(self.openUrl + rId, self.openType, self.openSet);
|
|
|
|
|
});
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.clickEvent = function () {
|
|
|
|
|
|
|
|
|
|
// if(self.gridObj != null){
|
|
|
|
|
//
|
|
|
|
|
// alert();
|
|
|
|
|
// }else{
|
|
|
|
|
// alert("Object is null");
|
|
|
|
|
// }
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.dbclickEvent = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
this.onEditEvent = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.onCheckBox = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.onEditCellEvent = function () {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
this.clickRefrash = function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.setPagerName = function (objName) {
|
|
|
|
|
self.pagerName = objName;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.setPagerInfo = function (objInfo) {
|
|
|
|
|
self.pagerInfo = objInfo;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.setPagerCount = function (count) {
|
|
|
|
|
self.pageShowCount = count;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.getGridRowID = function (gridObj) {
|
|
|
|
|
var selRowID = mygrid_recv.getSelectedRowId();
|
|
|
|
|
var selGroup = new Array();
|
|
|
|
|
if (selRowID.indexOf(",") > 0) {
|
|
|
|
|
selGroup = selRowID.split(",");
|
|
|
|
|
} else {
|
|
|
|
|
if (selRowID != null) {
|
|
|
|
|
selGroup.push(selRowID);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return selGroup;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.enableMultiselect = function (bValue) {
|
|
|
|
|
self.gridObj.enableMultiselect(bValue);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.getObjByClassName = function (eleClassName) {
|
|
|
|
|
var getEleClass = []; //定义一个数组
|
|
|
|
|
var myclass = new RegExp("\\b" + eleClassName + "\\b"); //创建一个正则表达式对像
|
|
|
|
|
var elem = document.body.all.tags("DIV"); //获取文档里所有的元素
|
|
|
|
|
for (var h = 0; h < elem.length; h++) {
|
|
|
|
|
var classes = elem[h].className; //获取class对像
|
|
|
|
|
|
|
|
|
|
if (myclass.test(classes)) {
|
|
|
|
|
|
|
|
|
|
getEleClass.push(elem[h]); //正则比较,取到想要的CLASS对像
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
return getEleClass; //返回数组
|
|
|
|
|
}
|
|
|
|
|
//get total page count
|
|
|
|
|
this.getTotalPage = function () {
|
|
|
|
|
var urlVal = self.responseUrl + "?handle=page&val=" + self.newGuid();
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//Get Guid
|
|
|
|
|
this.newGuid = function () {
|
|
|
|
|
var guid = "";
|
|
|
|
|
for (var i = 1; i <= 32; i++) {
|
|
|
|
|
var n = Math.floor(Math.random() * 16.0).toString(16);
|
|
|
|
|
guid += n;
|
|
|
|
|
if ((i == 8) || (i == 12) || (i == 16) || (i == 20))
|
|
|
|
|
guid += "-";
|
|
|
|
|
}
|
|
|
|
|
return guid.toUpperCase();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//初始化页面
|
|
|
|
|
this.initPage = function () {
|
|
|
|
|
self.pager = new PagerView('pager');
|
|
|
|
|
|
|
|
|
|
var urlVal = self.responseUrl + "?handle=page&val=" + self.newGuid(); //alert(self.responseUrl + "?handle=page&val="+self.newGuid());
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
self.totalPageCount = loadVal;
|
|
|
|
|
|
|
|
|
|
self.pager.itemCount = self.totalPageCount;
|
|
|
|
|
self.pager.size = self.pageShowCount;
|
|
|
|
|
self.pager.index = 1;
|
|
|
|
|
self.pager.onclick = function (index) {
|
|
|
|
|
|
|
|
|
|
document.getElementById('info').innerHTML = '现在翻到第' + index + '页';
|
|
|
|
|
|
|
|
|
|
self.request = self.responseUrl + "?handle=list&show_page=" + self.pager.size.toString() + "&cur_page=" + index;
|
|
|
|
|
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
self.bind();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (self.isDoubleClick) {
|
|
|
|
|
self.dbclickPop();
|
|
|
|
|
}
|
|
|
|
|
}, 300);
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
self.pager.render();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.initCommonPager = function (handleName, idQuery) {
|
|
|
|
|
if (self.pagerName != null) {
|
|
|
|
|
self.pager = new PagerView(self.pagerName);
|
|
|
|
|
} else {
|
|
|
|
|
self.pager = new PagerView('pager');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var urlVal = "";
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
//urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + self.multipleSearchVal + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
//urlVal = self.responseUrl + "?handle=" + handleName + "page" + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page" + self.multipleSearchVal + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page" + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
self.totalPageCount = loadVal;
|
|
|
|
|
|
|
|
|
|
self.pager.itemCount = self.totalPageCount;
|
|
|
|
|
self.pager.size = self.pageShowCount;
|
|
|
|
|
self.pager.index = 1;
|
|
|
|
|
self.pager.onclick = function (index) {
|
|
|
|
|
|
|
|
|
|
if (self.pagerInfo != null) {
|
|
|
|
|
document.getElementById(self.pagerInfo).innerHTML = '现在翻到第' + index + '页';
|
|
|
|
|
} else {
|
|
|
|
|
document.getElementById('info').innerHTML = '现在翻到第' + index + '页';
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery + "&search=" + escape(self.searchVal);
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
self.bind();
|
|
|
|
|
self.clickEvent();
|
|
|
|
|
|
|
|
|
|
if (self.isDoubleClick) {
|
|
|
|
|
self.dbclickPop();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnEditCell) {
|
|
|
|
|
self.onEditEvent();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnCheckBox) {
|
|
|
|
|
self.onCheckBox();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnEditCell) {
|
|
|
|
|
self.onEditCellEvent();
|
|
|
|
|
}
|
|
|
|
|
}, 300);
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
self.pager.render();
|
|
|
|
|
}
|
|
|
|
|
//初始化页面
|
|
|
|
|
this.initPageByHandle = function (handleName) {
|
|
|
|
|
var lsurl = "";
|
|
|
|
|
self.pager = new PagerView('pager');
|
|
|
|
|
|
|
|
|
|
var urlVal = "";
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + self.multipleSearchVal + "&val=" + self.newGuid();
|
|
|
|
|
} else {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + "&val=" + self.newGuid();
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page" + self.multipleSearchVal + "&val=" + self.newGuid();
|
|
|
|
|
} else {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&val=" + self.newGuid();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
self.totalPageCount = loadVal;
|
|
|
|
|
|
|
|
|
|
self.pager.itemCount = self.totalPageCount;
|
|
|
|
|
self.pager.size = self.pageShowCount;
|
|
|
|
|
self.pager.index = 1;
|
|
|
|
|
self.pager.onclick = function (index) {
|
|
|
|
|
|
|
|
|
|
document.getElementById('info').innerHTML = '现在翻到第' + index + '页';
|
|
|
|
|
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
var tempSortValue = "";
|
|
|
|
|
var tempSortIndex = "";
|
|
|
|
|
if (self.sortValue != null && self.sortType != null) {
|
|
|
|
|
tempSortValue = "&sort=" + self.sortValue;
|
|
|
|
|
tempSortIndex = "&sortindex=" + self.sortType;
|
|
|
|
|
|
|
|
|
|
// if(self.request.indexOf("&sort=") >= 0){
|
|
|
|
|
// var beginString = self.request.substr(0,self.request.indexOf("&sort="));
|
|
|
|
|
// var endString = self.request.substr(self.request.indexOf("&sort="),self.request.length - self.request.indexOf("&sort="));
|
|
|
|
|
// var midString = endString.substr(1,endString.length - 1);
|
|
|
|
|
// var midSecondStr = "";
|
|
|
|
|
// if(midString.indexOf("&") >= 0){
|
|
|
|
|
// midSecondStr = midString.substr(midString.indexOf("&"),midString.length-midString.indexOf("&"));
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// self.request = beginString+tempSortValue+midSecondStr;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// if(self.request.indexOf("&sortindex=") >= 0){
|
|
|
|
|
// var beginString = self.request.substr(0,self.request.indexOf("&sortindex="));
|
|
|
|
|
// var endString = self.request.substr(self.request.indexOf("&sortindex="),self.request.length - self.request.indexOf("&sortindex="));
|
|
|
|
|
// var midString = endString.substr(1,endString.length - 1);
|
|
|
|
|
// var midSecondStr = "";
|
|
|
|
|
// if(midString.indexOf("&") >= 0){
|
|
|
|
|
// midSecondStr = midString.substr(midString.indexOf("&"),midString.length-midString.indexOf("&"));
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// self.request = beginString+tempSortIndex+midSecondStr;
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
lsurl = self.responseUrl + "?show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal) + tempSortValue + tempSortIndex;
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal) + tempSortValue + tempSortIndex;
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal) + tempSortValue + tempSortIndex + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal) + tempSortValue + tempSortIndex;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
lsurl = self.responseUrl + "?show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal);
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal);
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal) + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + "&search=" + escape(self.searchVal);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
var tempSortValue = "";
|
|
|
|
|
var tempSortIndex = "";
|
|
|
|
|
if (self.sortValue != null && self.sortType != null) {
|
|
|
|
|
tempSortValue = "&sort=" + self.sortValue;
|
|
|
|
|
tempSortIndex = "&sortindex=" + self.sortType;
|
|
|
|
|
|
|
|
|
|
// if(self.request.indexOf("&sort=") >= 0){
|
|
|
|
|
// var beginString = self.request.substr(0,self.request.indexOf("&sort="));
|
|
|
|
|
// var endString = self.request.substr((self.request.indexOf("&sort=")),(self.request.length - self.request.indexOf("&sort=")));
|
|
|
|
|
// var midString = endString.substr(1,endString.length - 1);
|
|
|
|
|
// var midSecondStr = "";
|
|
|
|
|
// if(midString.indexOf("&") >= 0){
|
|
|
|
|
// midSecondStr = midString.substr(midString.indexOf("&"),midString.length-midString.indexOf("&"));
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// self.request = beginString+tempSortValue+midSecondStr;
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// if(self.request.indexOf("&sortindex=") >= 0){
|
|
|
|
|
// var beginString = self.request.substr(0,self.request.indexOf("&sortindex="));
|
|
|
|
|
// var endString = self.request.substr(self.request.indexOf("&sortindex="),self.request.length - self.request.indexOf("&sortindex="));
|
|
|
|
|
// var midString = endString.substr(1,endString.length - 1);
|
|
|
|
|
// var midSecondStr = "";
|
|
|
|
|
// if(midString.indexOf("&") >= 0){
|
|
|
|
|
// midSecondStr = midString.substr(midString.indexOf("&"),midString.length-midString.indexOf("&"));
|
|
|
|
|
// }
|
|
|
|
|
//
|
|
|
|
|
// self.request = beginString+tempSortIndex+midSecondStr;
|
|
|
|
|
// }
|
|
|
|
|
lsurl = self.responseUrl + "?show_page=" + self.pager.size.toString() + "&cur_page=" + index + tempSortValue + tempSortIndex;
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + tempSortValue + tempSortIndex;
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + tempSortValue + tempSortIndex + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + tempSortValue + tempSortIndex;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
lsurl = self.responseUrl + "?show_page=" + self.pager.size.toString() + "&cur_page=" + index;
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index;
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
self.bind();
|
|
|
|
|
self.clickEvent();
|
|
|
|
|
self.onEditEvent();
|
|
|
|
|
|
|
|
|
|
if (self.isDoubleClick) {
|
|
|
|
|
self.dbclickPop();
|
|
|
|
|
}
|
|
|
|
|
if (self.isDBClickEvent) {
|
|
|
|
|
self.dbclickEvent();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnEditCell) {
|
|
|
|
|
self.onEditCellEvent();
|
|
|
|
|
}
|
|
|
|
|
if (self.isSort) {
|
|
|
|
|
self.sortEventFun();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnCheckBox) {
|
|
|
|
|
self.onCheckBox();
|
|
|
|
|
}
|
|
|
|
|
}, 300);
|
|
|
|
|
};
|
|
|
|
|
self.pager.render();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//初始化页面
|
|
|
|
|
this.initPageByGID = function (handleName, idQuery) {
|
|
|
|
|
self.pager = new PagerView('pager');
|
|
|
|
|
|
|
|
|
|
var urlVal = "";
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page&search=" + escape(self.searchVal) + idQuery + "&val=" + self.newGuid(); //alert(self.responseUrl + "?handle=page&val="+self.newGuid());
|
|
|
|
|
} else {
|
|
|
|
|
urlVal = self.responseUrl + "?handle=" + handleName + "page" + idQuery + "&val=" + self.newGuid();
|
|
|
|
|
}
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
self.totalPageCount = loadVal;
|
|
|
|
|
|
|
|
|
|
self.pager.itemCount = self.totalPageCount;
|
|
|
|
|
self.pager.size = self.pageShowCount;
|
|
|
|
|
self.pager.index = 1;
|
|
|
|
|
self.pager.onclick = function (index) {
|
|
|
|
|
|
|
|
|
|
document.getElementById('info').innerHTML = '现在翻到第' + index + '页';
|
|
|
|
|
|
|
|
|
|
if (self.searchVal.length > 1) {
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery + "&search=" + escape(self.searchVal);
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery + "&search=" + escape(self.searchVal) + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery + "&search=" + escape(self.searchVal);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
//self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery;
|
|
|
|
|
if (self.multipleSearchVal.length > 1) {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery + self.multipleSearchVal;
|
|
|
|
|
} else {
|
|
|
|
|
self.request = self.responseUrl + "?handle=" + handleName + "&show_page=" + self.pager.size.toString() + "&cur_page=" + index + idQuery;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
self.initGrid();
|
|
|
|
|
self.bind();
|
|
|
|
|
self.clickEvent();
|
|
|
|
|
|
|
|
|
|
if (self.isDoubleClick) {
|
|
|
|
|
self.dbclickPop();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnEditCell) {
|
|
|
|
|
self.onEditEvent();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnCheckBox) {
|
|
|
|
|
self.onCheckBox();
|
|
|
|
|
}
|
|
|
|
|
if (self.isOnEditCell) {
|
|
|
|
|
self.onEditCellEvent();
|
|
|
|
|
}
|
|
|
|
|
}, 300);
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
self.pager.render();
|
|
|
|
|
};
|
|
|
|
|
//save grid column setting change(include: name,width,index)
|
|
|
|
|
this.saveColumnSetting = function () {
|
|
|
|
|
var colCount = this.gridObj.getColumnsNum();
|
|
|
|
|
var jsonFeeObj = "";
|
|
|
|
|
|
|
|
|
|
jsonFeeObj = "{\"$type\":\"DSWeb.Models.JsonColumnGroupEntity, DSWeb, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\",\"ShowCount\":" + pageShowCount + ",\"JsonColumnEntities\":[";
|
|
|
|
|
|
|
|
|
|
var tempGroupJson = "";
|
|
|
|
|
for (var i = 0; i < colCount; i++) {
|
|
|
|
|
var tempJson = "";
|
|
|
|
|
var rId = this.gridObj.getRowId(i);
|
|
|
|
|
|
|
|
|
|
tempJson += "\"$type\":\"DSWeb.Models.JsonColumnEntity, DSWeb, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\",";
|
|
|
|
|
tempJson += "\"col1\":\"\","; //gid
|
|
|
|
|
tempJson += "\"col2\":\"" + i.toString() + "\","; //column name
|
|
|
|
|
tempJson += "\"col3\":\"" + this.gridObj.getColumnLabel(i) + "\","; //column description
|
|
|
|
|
tempJson += "\"col4\":\"" + i.toString() + "\","; //index
|
|
|
|
|
tempJson += "\"col5\":\"" + this.gridObj.getColWidth(i) + "\","; //width
|
|
|
|
|
tempJson += "\"col6\":-1";
|
|
|
|
|
|
|
|
|
|
tempJson = "{" + tempJson + "}";
|
|
|
|
|
if (i == colCount - 1) {
|
|
|
|
|
tempGroupJson += tempJson;
|
|
|
|
|
} else {
|
|
|
|
|
tempGroupJson += tempJson + ",";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
jsonFeeObj += tempGroupJson;
|
|
|
|
|
jsonFeeObj += "]}";
|
|
|
|
|
|
|
|
|
|
$("hid_setting").value = jsonFeeObj;
|
|
|
|
|
jsonFeeObj = null;
|
|
|
|
|
//alert(jsonFeeObj);
|
|
|
|
|
var myForm = document.getElementById("form1");
|
|
|
|
|
myForm.submit();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.initMenu = function (id) {
|
|
|
|
|
this.$(id).oncontextmenu = function (ev) {
|
|
|
|
|
showMenu(ev);
|
|
|
|
|
return false;
|
|
|
|
|
};
|
|
|
|
|
document.onmousedown = function () { if (!self.over) hideMenu(); };
|
|
|
|
|
};
|
|
|
|
|
//显示右键菜单
|
|
|
|
|
this.showMenu = function () {
|
|
|
|
|
self.menu = null;
|
|
|
|
|
ev = ev || window.event;
|
|
|
|
|
|
|
|
|
|
hideMenu();
|
|
|
|
|
|
|
|
|
|
var e = ev.srcElement || ev.target;
|
|
|
|
|
|
|
|
|
|
if (e.tagName == "TH") return;
|
|
|
|
|
|
|
|
|
|
var x = ev.pageX || ev.clientX + document.documentElement.scrollLeft;
|
|
|
|
|
var y = ev.pageY || ev.clientY + document.documentElement.scrollTop;
|
|
|
|
|
|
|
|
|
|
self.menu = document.createElement("DIV");
|
|
|
|
|
self.menu.className = "menu";
|
|
|
|
|
self.menu.style.left = x + 4 + "px";
|
|
|
|
|
self.menu.style.top = y + "px";
|
|
|
|
|
document.body.appendChild(self.menu);
|
|
|
|
|
|
|
|
|
|
//alert(e.parentNode.getElementsByTagName("DIV")[1].innerHTML);
|
|
|
|
|
var dvGroup = e.parentNode.getElementsByTagName("DIV");
|
|
|
|
|
var dvGroupCount = dvGroup.length;
|
|
|
|
|
|
|
|
|
|
var id = "";
|
|
|
|
|
if (dvGroupCount == 1) {
|
|
|
|
|
id = dvGroup[0].innerHTML;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (id.trim().length < 1) {
|
|
|
|
|
hideMenu();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var sname = document.location.pathname.substring(7, location.pathname.length).toString();
|
|
|
|
|
|
|
|
|
|
var s = "<div class=\"dvMenu\" >修改标题</div><div class=\"dvMenu\" onclick=\"editColumnSetting('dvColumnSet')\">编辑显示</div>";
|
|
|
|
|
self.menu.innerHTML = s;
|
|
|
|
|
self.menu.onmouseover = function () { self.over = true; };
|
|
|
|
|
self.menu.onmouseout = function () { self.over = false; };
|
|
|
|
|
};
|
|
|
|
|
//hide menu object
|
|
|
|
|
this.hideMenu = function () {
|
|
|
|
|
if (self.menu) {
|
|
|
|
|
document.body.removeChild(self.menu);
|
|
|
|
|
self.menu = null;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
//IS NUMBER
|
|
|
|
|
this.IsNum = function (val) {
|
|
|
|
|
var re = /^[-\+]?\d+(\.\d+)?$/;
|
|
|
|
|
if (!re.test(val)) {
|
|
|
|
|
return false;
|
|
|
|
|
} else {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
this.setSearch = function (val) {
|
|
|
|
|
self.searchVal = val;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.setMultiple = function (val) {
|
|
|
|
|
self.multipleSearchVal = val;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
//is exist object
|
|
|
|
|
var docEle = function () {
|
|
|
|
|
return document.getElementById(arguments[0]) || false;
|
|
|
|
|
};
|
|
|
|
|
this.openNewDiv = function () {
|
|
|
|
|
var m = "mask";
|
|
|
|
|
if (docEle(_id)) document.removeChild(docEle(_id));
|
|
|
|
|
if (docEle(m)) document.removeChild(docEle(m));
|
|
|
|
|
// 新激活图层
|
|
|
|
|
var newDiv = document.createElement("div");
|
|
|
|
|
newDiv.id = _id;
|
|
|
|
|
newDiv.style.position = "absolute";
|
|
|
|
|
newDiv.style.zIndex = "9999";
|
|
|
|
|
newDiv.style.width = "200px";
|
|
|
|
|
newDiv.style.height = "100px";
|
|
|
|
|
newDiv.style.top = "100px";
|
|
|
|
|
newDiv.style.left = (parseInt(document.body.scrollWidth) - 300) / 2 + "px"; // 屏幕居中
|
|
|
|
|
newDiv.style.background = "#EFEFEF";
|
|
|
|
|
newDiv.style.border = "1px solid #860001";
|
|
|
|
|
newDiv.style.padding = "5px";
|
|
|
|
|
newDiv.innerHTML = "<br/> 您已更改了视图设置 是否保存<br/><br/><br/> ";
|
|
|
|
|
document.body.appendChild(newDiv);
|
|
|
|
|
// mask图层
|
|
|
|
|
var newMask = document.createElement("div");
|
|
|
|
|
newMask.id = m;
|
|
|
|
|
newMask.style.position = "absolute";
|
|
|
|
|
newMask.style.zIndex = "1";
|
|
|
|
|
newMask.style.width = document.body.scrollWidth + "px";
|
|
|
|
|
newMask.style.height = document.body.scrollHeight + "px";
|
|
|
|
|
newMask.style.top = "0px";
|
|
|
|
|
newMask.style.left = "0px";
|
|
|
|
|
newMask.style.background = "#000";
|
|
|
|
|
newMask.style.filter = "alpha(opacity=40)";
|
|
|
|
|
newMask.style.opacity = "0.40";
|
|
|
|
|
document.body.appendChild(newMask);
|
|
|
|
|
// 关闭mask和新图层
|
|
|
|
|
var saveButton = document.createElement("a");
|
|
|
|
|
saveButton.href = "#";
|
|
|
|
|
saveButton.innerHTML = "确定";
|
|
|
|
|
saveButton.className = "regular";
|
|
|
|
|
saveButton.onclick = function () {
|
|
|
|
|
this.saveColumnSetting(); // save user grid column setting
|
|
|
|
|
}
|
|
|
|
|
newDiv.appendChild(saveButton);
|
|
|
|
|
|
|
|
|
|
//newDiv.innerHTML += " ";
|
|
|
|
|
|
|
|
|
|
var cancelButton = document.createElement("a");
|
|
|
|
|
cancelButton.href = "#";
|
|
|
|
|
cancelButton.innerHTML = "取消";
|
|
|
|
|
cancelButton.className = "regular";
|
|
|
|
|
cancelButton.onclick = function () {
|
|
|
|
|
document.body.removeChild(docEle(_id));
|
|
|
|
|
document.body.removeChild(docEle(m));
|
|
|
|
|
cancelColumnSet();
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
newDiv.appendChild(cancelButton);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.cancelColumnSet = function () {
|
|
|
|
|
self.gridObj = new dhtmlXGridObject(self.id);
|
|
|
|
|
self.gridObj.setImagePath(self.imageUrl);
|
|
|
|
|
self.gridObj.setSkin(self.skin);
|
|
|
|
|
self.gridObj.setHeader(self.headArgs.toString());
|
|
|
|
|
self.gridObj.setInitWidths(self.widthArgs.toString());
|
|
|
|
|
self.gridObj.setColAlign(self.alignArgs.toString());
|
|
|
|
|
self.gridObj.setColSorting(self.sortArgs.toString());
|
|
|
|
|
self.gridObj.setColTypes(self.typeArgs.toString());
|
|
|
|
|
self.gridObj.init();
|
|
|
|
|
|
|
|
|
|
setTimeout(function () {
|
|
|
|
|
mygrid_log.load(rspUrl + "?handle=list&show_page=" + self.pageShowCount + "&cur_page=1", "json");
|
|
|
|
|
}, 300);
|
|
|
|
|
|
|
|
|
|
this.initPage();
|
|
|
|
|
initMenu();
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
this.getUserGridSetting = function () {
|
|
|
|
|
var urlVal = self.responseUrl + "handle=setting&val=" + newGuid();
|
|
|
|
|
var loader = dhtmlxAjax.getSync(urlVal);
|
|
|
|
|
var loadVal = loader.xmlDoc.responseText;
|
|
|
|
|
|
|
|
|
|
jsonPage = loadVal;
|
|
|
|
|
if (IsNum(jsonPage)) {
|
|
|
|
|
jsonPageObj = null;
|
|
|
|
|
} else {
|
|
|
|
|
jsonPageObj = eval('(' + loadVal + ')');
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.editColumnSetting = function () {
|
|
|
|
|
hideMenu();
|
|
|
|
|
var m = "mask";
|
|
|
|
|
if (docEle(_id)) document.removeChild(docEle(_id));
|
|
|
|
|
if (docEle(m)) document.removeChild(docEle(m));
|
|
|
|
|
// 新激活图层
|
|
|
|
|
var newDiv = document.createElement("div");
|
|
|
|
|
newDiv.id = _id;
|
|
|
|
|
newDiv.style.position = "absolute";
|
|
|
|
|
newDiv.style.zIndex = "9999";
|
|
|
|
|
newDiv.style.width = "700px";
|
|
|
|
|
newDiv.style.height = "340px";
|
|
|
|
|
newDiv.style.top = "100px";
|
|
|
|
|
newDiv.style.left = (parseInt(document.body.scrollWidth) - 560) / 2 + "px"; // 屏幕居中
|
|
|
|
|
newDiv.style.background = "#EFEFEF";
|
|
|
|
|
newDiv.style.border = "1px solid #860001";
|
|
|
|
|
newDiv.style.padding = "5px";
|
|
|
|
|
getUserGridSetting();
|
|
|
|
|
var TargeVal = "";
|
|
|
|
|
if (jsonPageObj != null) {
|
|
|
|
|
for (var i = 0; i < jsonPageObj.columns.length; i++) {
|
|
|
|
|
TargeVal += "<option value=\"" + jsonPageObj.columns[i].name + "\">" + jsonPageObj.columns[i].description + "</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var editObj = "<div style=\"float:left\"><select id=\"sel_LogColumns\" multiple=\"multiple\" style=\"width:200px;height:300px;\">"
|
|
|
|
|
+ "<option value=\"NAME\">日志名称</option><option value=\"LOGTYPE\">日志类型</option><option value=\"LOGTIME\">日志记录时间</option>"
|
|
|
|
|
+ "<option value=\"LOGCONTENT\">日志内容</option><option value=\"USERNAME\">操作人</option></select></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:60px;height:210px;margin:0 auto;text-align:center;vertical-align:middle;line-height:300px; padding-top:90px\">"
|
|
|
|
|
+ "<div class=\"imgLeftButton\" onmousemove=\"this.className='imgLeftHoverButton'\" onmouseout=\"this.className='imgLeftButton'\" title=\"添加\" onclick=\"add()\"></div>"
|
|
|
|
|
+ "<div class=\"imgRightButton\" onmousemove=\"this.className='imgRightHoverButton'\" onmouseout=\"this.className='imgRightButton'\" title=\"移除\" onclick=\"remove()\"></div>"
|
|
|
|
|
+ "</div><div style=\"float:left;\"><select id=\"sel_VisiableColumns\" multiple=\"multiple\" style=\"width:200px;height:300px;\">" + TargeVal + "</select></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:60px;height:210px;margin:0 auto;text-align:center;vertical-align:middle;line-height:300px; padding-top:90px\">"
|
|
|
|
|
+ "<div class=\"imgUpButton\" onmousemove=\"this.className='imgUpHoverButton'\" onmouseout=\"this.className='imgUpButton'\" title=\"向上\" onclick=\"up()\"></div>"
|
|
|
|
|
+ "<div class=\"imgDownButton\" onmousemove=\"this.className='imgDownHoverButton'\" onmouseout=\"this.className='imgDownButton'\" title=\"向下\" onclick=\"down()\"></div></div>"
|
|
|
|
|
+ "<div><div style=\"float:left\"><input type=\"text\" id=\"txt_rename\" style=\"height:20px;width:110px; \"/></div>"
|
|
|
|
|
+ "<div class=\"enterButton\" style=\"width:30px; \" onclick=\"saveRename()\">保存</div></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:70px;\"><div class=\"enterButton\" onclick=\"pushRename()\">重命名</div></div>"
|
|
|
|
|
+ "<div style=\"float:left;width:100%;padding-left:120px;\"><div class=\"enterButton\" onclick=\"saveColumnHeader()\">保存</div><div class=\"enterButton\" onclick=\"cancelColumnHeader()\">取消</div></div>";
|
|
|
|
|
newDiv.innerHTML = editObj;
|
|
|
|
|
document.body.appendChild(newDiv);
|
|
|
|
|
// mask图层
|
|
|
|
|
var newMask = document.createElement("div");
|
|
|
|
|
newMask.id = m;
|
|
|
|
|
newMask.style.position = "absolute";
|
|
|
|
|
newMask.style.zIndex = "1";
|
|
|
|
|
newMask.style.width = document.body.scrollWidth + "px";
|
|
|
|
|
newMask.style.height = document.body.scrollHeight + "px";
|
|
|
|
|
newMask.style.top = "0px";
|
|
|
|
|
newMask.style.left = "0px";
|
|
|
|
|
newMask.style.background = "#000";
|
|
|
|
|
newMask.style.filter = "alpha(opacity=40)";
|
|
|
|
|
newMask.style.opacity = "0.40";
|
|
|
|
|
document.body.appendChild(newMask);
|
|
|
|
|
// 关闭mask和新图层
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
String.prototype.trim = function () { return this.replace(/(^\s*)|(\s*$)/g, ""); }
|
|
|
|
|
|
|
|
|
|
//pager view
|
|
|
|
|
function PagerView(id) {
|
|
|
|
|
var selfp = this;
|
|
|
|
|
this.id = id;
|
|
|
|
|
this.container = null;
|
|
|
|
|
this.index = 1; // 当前页码, 从1开始
|
|
|
|
|
this.size = self.pageShowCount; // 每页显示记录数
|
|
|
|
|
this.maxButtons = 9; // 显示的分页按钮数量
|
|
|
|
|
this.itemCount = 0; // 记录总数
|
|
|
|
|
this.pageCount = 0; // 总页数
|
|
|
|
|
/**
|
|
|
|
|
* 控件使用者重写本方法, 获取翻页事件, 可用来向服务器端发起AJAX请求.
|
|
|
|
|
* @param index: 被点击的页码.
|
|
|
|
|
*/
|
|
|
|
|
this.onclick = function (index) {
|
|
|
|
|
};
|
|
|
|
|
/**
|
|
|
|
|
* 内部方法.
|
|
|
|
|
*/
|
|
|
|
|
this._onclick = function (index) {
|
|
|
|
|
selfp.index = index;
|
|
|
|
|
selfp.onclick(index);
|
|
|
|
|
selfp.render();
|
|
|
|
|
};
|
|
|
|
|
/**
|
|
|
|
|
* 在显示之前计算各种页码变量的值.
|
|
|
|
|
*/
|
|
|
|
|
this.calculate = function () {
|
|
|
|
|
selfp.pageCount = parseInt(Math.ceil(selfp.itemCount / selfp.size));
|
|
|
|
|
selfp.index = parseInt(selfp.index);
|
|
|
|
|
if (selfp.index > selfp.pageCount) {
|
|
|
|
|
selfp.index = selfp.pageCount;
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
/**
|
|
|
|
|
* 渲染分页控件.
|
|
|
|
|
*/
|
|
|
|
|
this.render = function () {
|
|
|
|
|
if (selfp.id != undefined) {
|
|
|
|
|
var div = document.getElementById(selfp.id);
|
|
|
|
|
div.view = selfp;
|
|
|
|
|
selfp.container = div;
|
|
|
|
|
}
|
|
|
|
|
selfp.calculate();
|
|
|
|
|
var start, end;
|
|
|
|
|
start = Math.max(1, selfp.index - parseInt(selfp.maxButtons / 2));
|
|
|
|
|
end = Math.min(selfp.pageCount, start + selfp.maxButtons - 1);
|
|
|
|
|
start = Math.max(1, end - selfp.maxButtons + 1);
|
|
|
|
|
var str = "";
|
|
|
|
|
str += "<div class=\"PagerView\">\n";
|
|
|
|
|
if (selfp.pageCount > 1) {
|
|
|
|
|
if (selfp.index != 1) {
|
|
|
|
|
str += '<a href="javascript://1"><span>|<</span></a>';
|
|
|
|
|
str += '<a href="javascript://' + (selfp.index - 1) + '"><span><<</span></a>';
|
|
|
|
|
} else {
|
|
|
|
|
str += '<span>|<</span>';
|
|
|
|
|
str += '<span><<</span>';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
for (var i = start; i <= end; i++) {
|
|
|
|
|
if (i == this.index) {
|
|
|
|
|
str += '<span class="on">' + i + "</span>";
|
|
|
|
|
} else {
|
|
|
|
|
str += '<a href="javascript://' + i + '"><span>' + i + "</span></a>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (selfp.pageCount > 1) {
|
|
|
|
|
if (selfp.index != selfp.pageCount) {
|
|
|
|
|
str += '<a href="javascript://' + (selfp.index + 1) + '"><span>>></span></a>';
|
|
|
|
|
str += '<a href="javascript://' + selfp.pageCount + '"><span>>|</span></a>';
|
|
|
|
|
} else {
|
|
|
|
|
str += '<span>>></span>';
|
|
|
|
|
str += '<span>>|</span>';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
str += ' 一共' + selfp.pageCount + '页, ' + selfp.itemCount + '条记录 ' + ' 每页显示: ' + "<select id=\"cusShowCount\" style=\"width:70px;\" onchange=\"changeShowCount('cusShowCount')\">" + selfp.getPageOption(selfp.size) + "</select>";
|
|
|
|
|
str += "</div><!-- /.pagerView -->\n";
|
|
|
|
|
selfp.container.innerHTML = str;
|
|
|
|
|
var a_list = selfp.container.getElementsByTagName('a');
|
|
|
|
|
for (var i = 0; i < a_list.length; i++) {
|
|
|
|
|
a_list[i].onclick = function () {
|
|
|
|
|
var index = this.getAttribute('href');
|
|
|
|
|
if (index != undefined && index != '') {
|
|
|
|
|
index = parseInt(index.replace('javascript://', ''));
|
|
|
|
|
selfp._onclick(index)
|
|
|
|
|
}
|
|
|
|
|
return false;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
this.getPageOption = function (size) {
|
|
|
|
|
var pageCountArg = new Array();
|
|
|
|
|
pageCountArg.push(5);
|
|
|
|
|
pageCountArg.push(15);
|
|
|
|
|
pageCountArg.push(30);
|
|
|
|
|
pageCountArg.push(50);
|
|
|
|
|
pageCountArg.push(100);
|
|
|
|
|
pageCountArg.push(200);
|
|
|
|
|
|
|
|
|
|
var optionStr = "";
|
|
|
|
|
for (var i = 0; i < pageCountArg.length; i++) {
|
|
|
|
|
if (size == parseInt(pageCountArg[i])) {
|
|
|
|
|
optionStr += "<option value=\"" + pageCountArg[i] + "\" selected=\"1\">" + pageCountArg[i] + "</option>";
|
|
|
|
|
} else {
|
|
|
|
|
optionStr += "<option value=\"" + pageCountArg[i] + "\">" + pageCountArg[i] + "</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return optionStr;
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function el(id) {
|
|
|
|
|
return document.getElementById(id);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function initMenu(gridObj) {
|
|
|
|
|
el(gridObj).oncontextmenu = function (ev) {
|
|
|
|
|
showMenu(ev);
|
|
|
|
|
return false;
|
|
|
|
|
};
|
|
|
|
|
document.onmousedown = function () { if (!over) hideMenu(); };
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
var over = false;
|
|
|
|
|
var menu = null;
|
|
|
|
|
|
|
|
|
|
function showMenu(ev) {
|
|
|
|
|
menu = null;
|
|
|
|
|
ev = ev || window.event;
|
|
|
|
|
|
|
|
|
|
hideMenu();
|
|
|
|
|
|
|
|
|
|
var e = ev.srcElement || ev.target;
|
|
|
|
|
|
|
|
|
|
if (e.tagName == "TH") return;
|
|
|
|
|
|
|
|
|
|
var x = ev.pageX || ev.clientX + document.documentElement.scrollLeft;
|
|
|
|
|
var y = ev.pageY || ev.clientY + document.documentElement.scrollTop;
|
|
|
|
|
|
|
|
|
|
menu = document.createElement("DIV");
|
|
|
|
|
menu.className = "menu";
|
|
|
|
|
menu.style.left = x + 4 + "px";
|
|
|
|
|
menu.style.top = y + "px";
|
|
|
|
|
document.body.appendChild(menu);
|
|
|
|
|
|
|
|
|
|
//alert(e.parentNode.getElementsByTagName("DIV")[1].innerHTML);
|
|
|
|
|
var dvGroup = e.parentNode.getElementsByTagName("DIV");
|
|
|
|
|
var dvGroupCount = dvGroup.length;
|
|
|
|
|
|
|
|
|
|
var id = "";
|
|
|
|
|
if (dvGroupCount == 1) {
|
|
|
|
|
id = dvGroup[0].innerHTML;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (id.trim().length < 1) {
|
|
|
|
|
hideMenu();
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
var sname = document.location.pathname.substring(7, location.pathname.length).toString();
|
|
|
|
|
|
|
|
|
|
var s = "<div class=\"dvMenu\" onclick=\"editColumnSetting('dvColumnSet')\">编辑显示</div>";
|
|
|
|
|
menu.innerHTML = s;
|
|
|
|
|
menu.onmouseover = function () { over = true; };
|
|
|
|
|
menu.onmouseout = function () { over = false; };
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function hideMenu() {
|
|
|
|
|
if (menu) {
|
|
|
|
|
document.body.removeChild(menu);
|
|
|
|
|
menu = null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function editColumnSetting(_id) {
|
|
|
|
|
hideMenu();
|
|
|
|
|
var m = "mask";
|
|
|
|
|
if (docEle(_id)) document.removeChild(docEle(_id));
|
|
|
|
|
if (docEle(m)) document.removeChild(docEle(m));
|
|
|
|
|
// 新激活图层
|
|
|
|
|
var newDiv = document.createElement("div");
|
|
|
|
|
newDiv.id = _id;
|
|
|
|
|
newDiv.style.position = "absolute";
|
|
|
|
|
newDiv.style.zIndex = "9999";
|
|
|
|
|
newDiv.style.width = "700px";
|
|
|
|
|
newDiv.style.height = "340px";
|
|
|
|
|
newDiv.style.top = "100px";
|
|
|
|
|
newDiv.style.left = (parseInt(document.body.scrollWidth) - 560) / 2 + "px"; // 屏幕居中
|
|
|
|
|
newDiv.style.background = "#EFEFEF";
|
|
|
|
|
newDiv.style.border = "1px solid #860001";
|
|
|
|
|
newDiv.style.padding = "5px";
|
|
|
|
|
getUserGridSetting();
|
|
|
|
|
var TargeVal = "";
|
|
|
|
|
if (jsonPageObj != null) {
|
|
|
|
|
for (var i = 0; i < jsonPageObj.columns.length; i++) {
|
|
|
|
|
TargeVal += "<option value=\"" + jsonPageObj.columns[i].name + "\">" + jsonPageObj.columns[i].description + "</option>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
var editObj = "<div style=\"float:left\"><select id=\"sel_LogColumns\" multiple=\"multiple\" style=\"width:200px;height:300px;\">"
|
|
|
|
|
+ "<option value=\"NAME\">日志名称</option><option value=\"LOGTYPE\">日志类型</option><option value=\"LOGTIME\">日志记录时间</option>"
|
|
|
|
|
+ "<option value=\"LOGCONTENT\">日志内容</option><option value=\"USERNAME\">操作人</option></select></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:60px;height:210px;margin:0 auto;text-align:center;vertical-align:middle;line-height:300px; padding-top:90px\">"
|
|
|
|
|
+ "<div class=\"imgLeftButton\" onmousemove=\"this.className='imgLeftHoverButton'\" onmouseout=\"this.className='imgLeftButton'\" title=\"添加\" onclick=\"add()\"></div>"
|
|
|
|
|
+ "<div class=\"imgRightButton\" onmousemove=\"this.className='imgRightHoverButton'\" onmouseout=\"this.className='imgRightButton'\" title=\"移除\" onclick=\"remove()\"></div>"
|
|
|
|
|
+ "</div><div style=\"float:left;\"><select id=\"sel_VisiableColumns\" multiple=\"multiple\" style=\"width:200px;height:300px;\">" + TargeVal + "</select></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:60px;height:210px;margin:0 auto;text-align:center;vertical-align:middle;line-height:300px; padding-top:90px\">"
|
|
|
|
|
+ "<div class=\"imgUpButton\" onmousemove=\"this.className='imgUpHoverButton'\" onmouseout=\"this.className='imgUpButton'\" title=\"向上\" onclick=\"up()\"></div>"
|
|
|
|
|
+ "<div class=\"imgDownButton\" onmousemove=\"this.className='imgDownHoverButton'\" onmouseout=\"this.className='imgDownButton'\" title=\"向下\" onclick=\"down()\"></div></div>"
|
|
|
|
|
+ "<div><div style=\"float:left\"><input type=\"text\" id=\"txt_rename\" style=\"height:20px;width:110px; \"/></div>"
|
|
|
|
|
+ "<div class=\"enterButton\" style=\"width:30px; \" onclick=\"saveRename()\">保存</div></div>"
|
|
|
|
|
+ "<div style=\"float:left; width:70px;\"><div class=\"enterButton\" onclick=\"pushRename()\">重命名</div></div>"
|
|
|
|
|
+ "<div style=\"float:left;width:100%;padding-left:120px;\"><div class=\"enterButton\" onclick=\"saveColumnHeader()\">保存</div><div class=\"enterButton\" onclick=\"cancelColumnHeader()\">取消</div></div>";
|
|
|
|
|
newDiv.innerHTML = editObj;
|
|
|
|
|
document.body.appendChild(newDiv);
|
|
|
|
|
// mask图层
|
|
|
|
|
var newMask = document.createElement("div");
|
|
|
|
|
newMask.id = m;
|
|
|
|
|
newMask.style.position = "absolute";
|
|
|
|
|
newMask.style.zIndex = "1";
|
|
|
|
|
newMask.style.width = document.body.scrollWidth + "px";
|
|
|
|
|
newMask.style.height = document.body.scrollHeight + "px";
|
|
|
|
|
newMask.style.top = "0px";
|
|
|
|
|
newMask.style.left = "0px";
|
|
|
|
|
newMask.style.background = "#000";
|
|
|
|
|
newMask.style.filter = "alpha(opacity=40)";
|
|
|
|
|
newMask.style.opacity = "0.40";
|
|
|
|
|
document.body.appendChild(newMask);
|
|
|
|
|
// 关闭mask和新图层
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var docEle = function () {
|
|
|
|
|
return document.getElementById(arguments[0]) || false;
|
|
|
|
|
}
|
|
|
|
|
function openNewDiv(_id) {
|
|
|
|
|
var m = "mask";
|
|
|
|
|
if (docEle(_id)) document.removeChild(docEle(_id));
|
|
|
|
|
if (docEle(m)) document.removeChild(docEle(m));
|
|
|
|
|
// 新激活图层
|
|
|
|
|
var newDiv = document.createElement("div");
|
|
|
|
|
newDiv.id = _id;
|
|
|
|
|
newDiv.style.position = "absolute";
|
|
|
|
|
newDiv.style.zIndex = "9999";
|
|
|
|
|
newDiv.style.width = "200px";
|
|
|
|
|
newDiv.style.height = "100px";
|
|
|
|
|
newDiv.style.top = "100px";
|
|
|
|
|
newDiv.style.left = (parseInt(document.body.scrollWidth) - 300) / 2 + "px"; // 屏幕居中
|
|
|
|
|
newDiv.style.background = "#EFEFEF";
|
|
|
|
|
newDiv.style.border = "1px solid #860001";
|
|
|
|
|
newDiv.style.padding = "5px";
|
|
|
|
|
newDiv.innerHTML = "<br/> 您已更改了视图设置 是否保存<br/><br/><br/> ";
|
|
|
|
|
document.body.appendChild(newDiv);
|
|
|
|
|
// mask图层
|
|
|
|
|
var newMask = document.createElement("div");
|
|
|
|
|
newMask.id = m;
|
|
|
|
|
newMask.style.position = "absolute";
|
|
|
|
|
newMask.style.zIndex = "1";
|
|
|
|
|
newMask.style.width = document.body.scrollWidth + "px";
|
|
|
|
|
newMask.style.height = document.body.scrollHeight + "px";
|
|
|
|
|
newMask.style.top = "0px";
|
|
|
|
|
newMask.style.left = "0px";
|
|
|
|
|
newMask.style.background = "#000";
|
|
|
|
|
newMask.style.filter = "alpha(opacity=40)";
|
|
|
|
|
newMask.style.opacity = "0.40";
|
|
|
|
|
document.body.appendChild(newMask);
|
|
|
|
|
// 关闭mask和新图层
|
|
|
|
|
var saveButton = document.createElement("a");
|
|
|
|
|
saveButton.href = "#";
|
|
|
|
|
saveButton.innerHTML = "确定";
|
|
|
|
|
saveButton.className = "regular";
|
|
|
|
|
saveButton.onclick = function () {
|
|
|
|
|
change();
|
|
|
|
|
//document.body.removeChild(docEle(_id));
|
|
|
|
|
//document.body.removeChild(docEle(m));
|
|
|
|
|
//return false;
|
|
|
|
|
}
|
|
|
|
|
newDiv.appendChild(saveButton);
|
|
|
|
|
|
|
|
|
|
//newDiv.innerHTML += " ";
|
|
|
|
|
|
|
|
|
|
var cancelButton = document.createElement("a");
|
|
|
|
|
cancelButton.href = "#";
|
|
|
|
|
cancelButton.innerHTML = "取消";
|
|
|
|
|
cancelButton.className = "regular";
|
|
|
|
|
cancelButton.onclick = function () {
|
|
|
|
|
document.body.removeChild(docEle(_id));
|
|
|
|
|
document.body.removeChild(docEle(m));
|
|
|
|
|
unSaveGrid();
|
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
newDiv.appendChild(cancelButton);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function changeShowCount() {
|
|
|
|
|
|
|
|
|
|
}
|