//#region 按钮设置 function get_HideButton(set_HideButton_ID, HBillType, HModName, HUserName) { //获取父节点下所有的按钮节点 var parentNodes = document.getElementById(set_HideButton_ID); var btns = parentNodes.querySelectorAll('button'); var btnIdList = ""; //按钮ID列表 var btnNameList = ""; //按钮名称列表 var btnOrderList = ""; //按钮次序列表 var contentUrl = ""; //按钮设置窗口页面位置 //获取页面按钮元素的信息 for (var i = 0; i < btns.length; i++) { btnIdList += btns[i].id + ","; btnNameList += btns[i].innerText + ","; btnOrderList += i + ","; } //对数组进行编码 btnIdList = encodeURI(btnIdList.substring(0, btnIdList.length - 1));//对 URI 进行编码 btnNameList = encodeURI(btnNameList.substring(0, btnNameList.length - 1));//对 URI 进行编码 btnOrderList = encodeURI(btnOrderList.substring(0, btnOrderList.length - 1));//对 URI 进行编码 //获取按钮隐藏设置窗口文件路径 var urlStr = window.document.location.pathname;//获取文件路径 var urlLen = urlStr.split('/'); for (var i = 0; i < urlLen.length - 4; i++) { contentUrl += "../"; } contentUrl += '系统管理/按钮设置/Xt_ModuleButtonSet.html?HModName=' + HModName + '&HBillType=' + HBillType + "&btnIdList=" + btnIdList + "&btnNameList=" + btnNameList + "&btnOrderList=" + btnOrderList + "&HUserName=" + HUserName; //打开按钮隐藏设置子窗口 layer.open({ type: 2 , skin: "layui-layer-rim" //加上边框 , title: "按钮设置" //标题 , closeBtn: 1 //窗体右上角关闭 的 样式 , shift: 2 //弹出动画 , area: ["30%", "90%"] //窗体大小 , maxmin: true //设置最大最小按钮是否显示 , content: [contentUrl, "yes"] , btn: ["确定", "取消"] , btn1: function (index, laero) { //刷新按钮显示 Display_HideButton(set_HideButton_ID, HBillType, HModName, HUserName); //更新表格缓存的数据 layer.close(index);//关闭弹窗 } }) } //#endregion //#region 显示按钮 function Display_HideButton(set_HideButton_ID, HBillType, HModName, HUserName) { $.ajax({ url: GetWEBURL() + '/Xt_ModuleButtonSet_WMES/moduleButtonSetWMESList', type: "GET", async: false, data: { "HModName": HModName, "HBillType": HBillType, "HUserName": HUserName }, success: function (data1) { //获取父节点下所有的按钮节点 var parentNodes = document.getElementById(set_HideButton_ID); var btns = parentNodes.querySelectorAll('button'); //获取数据库中已经记录的按钮节点的id列表 var btnsData_InDataBase = []; for (var i = 0; i < data1.data.length; i++) { btnsData_InDataBase.push(data1.data[i]["HButtonID"]); } //记录数据库中没有设置数据的按钮节点的信息 || 记录页面上设置的按钮的信息 var btns_IDInfo = []; //记录页面上设置的按钮的ID var btns_info = []; //记录页面上设置的按钮的信息 var btnsData_NoInDataBase = []; //记录数据库中没有设置数据的按钮节点的信息 for (var i = 0; i < btns.length; i++) { //记录页面上设置的按钮的ID btns_IDInfo.push(btns[i].id); //记录页面上设置的按钮的信息 btns_info.push({ "HButtonID": btns[i].id , "HClassValue": btns[i].getAttribute('class') , "HLay_Event": btns[i].getAttribute('lay-event') , "HValue": btns[i].innerText , "childLiElement": btns[i].querySelectorAll('i') }) //记录数据库中没有设置数据的按钮节点的信息 if ($.inArray(btns[i].id, btnsData_InDataBase) == -1) { //var label_i = btns[i].firstChild; //var label_i_icon = label_i.getAttribute('class'); btnsData_NoInDataBase.push(btns[i].id); } } //清除父节点下的所有子节点 while (parentNodes.firstChild) { parentNodes.removeChild(parentNodes.firstChild); } //重新加载父节点下的子节点 //加载数据库中存在记录的按钮节点数据 for (var i = 0; i < data1.data.length; i++) { var index_temp = $.inArray(data1.data[i]["HButtonID"], btns_IDInfo); if (index_temp > -1) { // 创建子节点 var child = document.createElement('button'); child.type = "button"; child.className = btns_info[index_temp].HClassValue; child.setAttribute('lay-event', btns_info[index_temp].HLay_Event); child.id = btns_info[index_temp].HButtonID; if (btns_info[index_temp].childLiElement.length > 0) { child.appendChild(btns_info[index_temp].childLiElement[0]); } var element_i = document.createElement('text'); element_i.innerHTML = btns_info[index_temp].HValue; child.appendChild(element_i); //child.innerHTML = data1.data[i]["HOtherName"] == "" ? btns_info[index_temp].HValue : data1.data[i]["HOtherName"]; if (data1.data[i]["HHideFlag"] == true) { child.style = "display:none;"; } else { child.style = "display:inline;"; } // 将子节点添加到父节点下 parentNodes.appendChild(child); } } //加载数据库中不存在记录的按钮节点数据 for (var i = 0; i < btnsData_NoInDataBase.length; i++) { var index_temp = $.inArray(btnsData_NoInDataBase[i], btns_IDInfo); if (index_temp > -1) { // 创建子节点 var child = document.createElement('button'); child.type = "button"; child.className = btns_info[index_temp].HClassValue; child.setAttribute('lay-event', btns_info[index_temp].HLay_Event); child.id = btns_info[index_temp].HButtonID; if (btns_info[index_temp].childLiElement.length > 0) { child.appendChild(btns_info[index_temp].childLiElement[0]); } var element_i = document.createElement('text'); element_i.innerHTML = btns_info[index_temp].HValue; child.appendChild(element_i); //child.innerHTML = btns_info[index_temp].HValue; child.style = "display:inline;"; // 将子节点添加到父节点下 parentNodes.appendChild(child); } } ////遍历父节点下所有的按钮节点,获取 记录数据库中没有设置数据的按钮节点的信息 //for (var i = 0; i < btns.length; i++) { // var bar = 0; // for (var j = 0; j < data1.count; j++) { // if (btns[i].id == data1.data[j]["HButtonID"]) { // if (data1.data[j]["HHideFlag"] == true) { // btns[i].style = "display:none;"; // } else { // btns[i].style = "display:inline;"; // } // bar = 1; // break; // } // } // if (bar == 0) { // btns[i].style = "display:inline;"; // } //} }, error: function () { layer.alert("接口请求失败!", { icon: 5 }); } }) } //#endregion