📄 left.jsp
字号:
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="com.doone.uurm.WebAuth"%>
<html>
<head>
<title>网上客服主菜单</title>
<link href="style/main.css" type="text/css" rel="stylesheet" />
<%
WebAuth auth = WebAuth.getInstance(request);
if ( ! auth.IsAuthed() ) {
out.write("<script language=\"javascript\">self.parent.location.replace(\"" + request.getContextPath() + "/view/login/login.jsp" + "\");</script>");
return;
}
String staffName = auth.getUserName();
StringBuffer citys = new StringBuffer();
for ( int i=0; i < auth.getCitys().size(); i++){
String[] city = (String[])auth.getCitys().get(i);
citys.append("<option value=\"");
citys.append(city[0]);
citys.append("\"");
if ( city[0].equalsIgnoreCase(auth.getCityCode()) ) {
citys.append(" selected ");
}
citys.append(">");
citys.append(city[1]);
citys.append("</option>");
}
StringBuffer posts = new StringBuffer();
for ( int i=0; i < auth.getPosts().size(); i++){
String[] post = (String[])auth.getPosts().get(i);
posts.append("<option value=\"");
posts.append(post[0]);
posts.append("\"");
posts.append(">");
posts.append(post[1]);
posts.append("</option>");
}
%>
<script language="javascript" src="XMLHttpClient.js"></script>
<script language="javascript" src="script/tree.js"></script>
<script language="javascript" type="">
<!--
var ApplicationRootPath = "<%= request.getContextPath()%>";
var xmlHttpURL = ApplicationRootPath + "/XmlHttpService"
/* 重新加载菜单或菜单项。
* @param menuIdx 指定将要加载的菜单索引,如果斿0则加载主菜单。
* @param idx 指定加载菜单中的菜单项。
*/
function menuReload(menuIdx, id ){
if ( menuIdx == 0 ) return loadMainMenu(id);
else return loadOtherMenu(menuIdx-1, id);
}
var mainMenu = null;
function loadMainMenu(id) {
try {
// 重新加载菜单,如果该页面包含多个菜单项,则可以翚过idx加载指定顺序的菜单。
var xmlHttp = new XMLHttpClient(xmlHttpURL);
xmlHttp.append("PID",id);
var str = xmlHttp.submitAsString("XmlService","getStaffPurview");
if ( str.substr(0,6) == new String("str-->") ) {
// TODO 如果idx大于0则加载到相应的子菜单,而不是重新加载整个树。
// 清空主菜单,如果idx大于0则只清空相应的子菜单。
document.getElementById("menuList").innerHTML = "";
mainMenu = new XMLTree("mainMenu","images");
mainMenu.loadXMLStr(str.substr(6),document.getElementById("menuList"));
fn_ShowPanel();
if ( mainMenu.menuNode.length > 0 ) {
selectedMenuIndex(mainMenu, 0);
}
else {
menuclick("/view/sysmgr/OperRightForbidden.jsp",0,"","",false);
}
}
else {
alert(str.substr(6));
}
}
catch(ex) {
alert(ex.description);
return false;
}
return true;
}
function loadOtherMenu(menuIdx, id) {
try {
// 重新加载菜单
var menuListNode = menuList.parentElement.children(menuIdx+1);
if ( menuListNode == undefined || menuListNode == null ) {
return "没有找到菜单节点。";
}
var xmlHttp = new XMLHttpClient(xmlHttpURL);
if ( id == -1 && menuListNode.initID != undefined && menuListNode.initID != null) {
xmlHttp.append("PID",menuListNode.initID);
}
else {
xmlHttp.append("PID",id);
}
var str = xmlHttp.submitAsString(menuListNode.Service,menuListNode.Method);
if ( str.substr(0,6) == new String("str-->") ) {
var menuNum = menuIdx;
var otherMenu = null;
if ( eval("self." + menuListNode.menuId + " != undefined" ) ) {
var otherMenu = eval("self." + menuListNode.menuId);
}
if ( otherMenu != null && id != null && parseInt(id) != NaN && parseInt(id) > 0 ) {
otherMenu.openXmlStr(id, str.substr(6));
}
else if ( otherMenu != null ) {
otherMenu.doc.innerHTML = "";
otherMenu = new XMLTree(menuListNode.menuId,"images");
otherMenu.loadXMLStr(str.substr(6),menuListNode);
eval("self." + menuListNode.menuId + " = otherMenu;");
return fn_ShowPanel(menuListNode.id);
}
else {
otherMenu = new XMLTree(menuListNode.menuId,"images");
otherMenu.loadXMLStr(str.substr(6),menuListNode);
eval("self." + menuListNode.menuId + " = otherMenu;");
return fn_ShowPanel(menuListNode.id);
}
}
else {
alert(str.substr(6));
}
}
catch(ex) {
alert(ex.description);
return false;
}
return true;
}
function addOtherMenu(menuIdStr, menuTitle, menuService, menuMethod, initID){
// 取菜单数,指出当前菜单的索引。同时检查菜单ID是否已经存在。
if ( menuIdStr == null || menuIdStr == undefined ) {
alert("错误的参数,菜单ID不能为空。");
return false;
}
var menuNum = menuTool.parentElement.childNodes.length;
if ( document.getElementById("menuList_" + menuIdStr) != null ) {
alert("相同的菜单已经存在,不能添加。");
return false;
}
var initValue = -1;
if ( initID != undefined && initID != null ) initValue = initID;
try {
var oTable = document.createElement("Table"); // 工具条的表对象。
var oTr = oTable.insertRow(); // 工具条的行对象;
var oTd = oTr.insertCell(); // 工具条的列对象;
var oDiv = document.createElement("Div"); // 菜单项的内容对象。
oDiv.id = "menuList_" + menuIdStr;
oDiv.menuId = menuIdStr;
oDiv.Service = menuService;
oDiv.Method = menuMethod;
oDiv.className = "menuList";
oDiv.initID = initValue;
oTable.id = "menuTool_" + menuIdStr;
oTable.initID = initValue;
oTable.menuId = menuIdStr;
oTable.Service = menuService;
oTable.Method = menuMethod;
oTable.border = 0;
oTable.className = "menuTool";
oTable.cellPadding = 0;
oTable.cellSpacing = 0;
oTr.className = "menuLineBodyTR";
oTd.vAlign="middle";
oTd.align="center";
oTd.onclick=new Function("return fn_ShowPanel('" + oDiv.id + "');");
oTd.DefaultClass="btnDefault";
oTd.OverClass="btnOver";
oTd.DownClass="btnDown";
oTd.style.behavior = "url(button.htc)";
oTd.innerText = menuTitle;
menuTool.parentElement.appendChild(oTable);
menuList.parentElement.appendChild(oDiv);
loadOtherMenu(menuNum - 1, -1);
}
catch(ex){
return false;
}
return true;
}
function getMenuIndex(menuIdStr) {
var menuNum = menuTool.parentElement.childNodes.length;
for ( var i=0; i<menuNum; i++ ) {
if ( menuTool.parentElement.childNodes[i].menuId == menuIdStr ) {
return i;
}
}
return -1;
}
function removeOtherMenu(menuIdStr){
try {
var toolNodes = menuTool.parentElement.childNodes;
var listNodes = menuList.parentElement.childNodes;
var menuNum = -1;
var menuLength = toolNodes.length;
var ret = false;
for ( var i=1; i<menuLength; i++ ) {
if ( menuNum==-1 && toolNodes[i].menuId == menuIdStr ) {
// 删除当前菜单。
toolNodes[i].removeNode(true);
listNodes[i].removeNode(true);
eval("self." + menuIdStr + " = undefined;");
menuNum = i-1;
ret = true;
break;
}
}
}
catch(ex){
alert(ex.description);
}
return ret;
}
/**
* @param menuId 菜单ID值的引用;
* @param action 动作名称,如:add,delete,modify
*/
function eventOtherMenu(menuId, action){
try{
if ( window.top.eventOtherMenu != undefined ){
window.top.eventOtherMenu(menuId, action);
}
return true;
}
catch(exception){
return true;
}
}
function selectedMenu(menuIdx, index) {
var menuObj = mainMenu;
if ( menuIdx > 0 ) {
var tools = menuTool.parentElement.childNodes;
if ( menuIdx < tools.length ) {
menuObj = eval("self." + tools[menuIdx].menuId);
}
}
return selectedMenuIndex(menuObj,index);
}
function menuPanelInit() {
// 取面板标题高度
var pw = menuPanel.clientWidth;
var ph = menuPanel.clientHeight+1;
var lw = document.body.clientWidth;
var lh = document.body.clientHeight - ph;
menuList.parentElement.style.width = lw-1;
menuList.parentElement.style.height = lh;
// 将菜单重新加载放到window.top中,以便全局调用。
if ( window.top.menuReload == undefined )
{
window.top.menuReload = menuReload;
window.top.addOtherMenu = addOtherMenu;
window.top.removeOtherMenu = removeOtherMenu;
window.top.getMenuIndex = getMenuIndex;
window.top.selectedMenu = selectedMenu;
window.top.showMenuPanel = fn_ShowPanel;
document.body.onunload = fn_unload;
}
showPostFullName();
// 主菜单是从编号1开始。
menuReload(0,1);
}
function fn_unload() {
window.top.menuReload = undefined;
window.top.addOtherMenu = undefined;
window.top.removeOtherMenu = undefined;
window.top.getMenuIndex = undefined;
window.top.selectedMenu = undefined;
window.top.showMenuPanel = undefined;
}
function fn_snap() {
// 显示工具条,隐藏掉主菜单。
menuTool.parentElement.style.display="block";
menuPanel.parentElement.style.display="none";
if ( self.parent != self ){
var pel = parent.document.all.tags("frameset");
for ( i=0; i< pel.length; i++)
{
if ( pel(i).name == "center") {
pel(i).cols = "20,*";
}
}
}
}
function fn_exit() {
// 如果只有主菜单显示则隐藏掉左帧。(这样只有两种情况可以恢复:整个页面刷新;右帧提供按钮操作。
// 否则关闭其它菜单(主菜单不能关闭)。
if ( self.parent != self ){
if ( menuTool.parentElement.childNodes.length == 1 ) {
alert("主菜单不能关闭。");
return ;
}
else {
try {
var menuItems = menuList.parentElement.childNodes;
for ( var i=0;i < menuItems.length;i++){
if ( menuItems[i].style.display == "block" ) {
if ( i == 0 ) {
alert("主菜单不能关闭。");
return ;
}
// 删除该菜单项。
removeOtherMenu(menuItems[i].menuId);
fn_ShowPanel();
break;
}
}
// 显示主菜单。
menuList.style.display = "block";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -