js实现权限树的更新权限时的全选全消功能
2009-02-17 15:43
537 查看
上一篇发了添加权限时的权限树JS源码,下面把更新时的也发给大家借鉴一下,因为更新时候牵扯到判断已有权限等,所以,还要麻烦一些。
// JScript 文件 function getParentByTagName(element,tagName) { var parent = element.parentNode; var upperTagName = tagName.toUpperCase(); while (parent && (parent.tagName.toUpperCase() != upperTagName)) { parent = parent.parentNode ? parent.parentNode : parent.parentElement; } return parent; } function setParentChecked(objNode) { var objParentDiv = getParentByTagName(objNode,"div"); if(objParentDiv == null || objParentDiv == "undefined") return; var objID = objParentDiv.getAttribute("ID"); var objParentCheckBox = document.getElementById(objID.replace("Nodes","CheckBox")); if(objParentCheckBox == null || objParentCheckBox == "undefined") return; if(objParentCheckBox.tagName!="INPUT" && objParentCheckBox.type == "checkbox") return; //add // if (objNode.checked=false) objPraentCheckBox.checked=false; // objParentCheckBox.checked = true; setParentChecked(objParentCheckBox); } function setParentUnChecked(objNode) { var objParentDiv = getParentByTagName(objNode,"div"); if(objParentDiv == null || objParentDiv == "undefined") return; var objID = objParentDiv.getAttribute("ID"); var objParentCheckBox = document.getElementById(objID.replace("Nodes","CheckBox")); if(objParentCheckBox == null || objParentCheckBox == "undefined") return; if(objParentCheckBox.tagName!="INPUT" && objParentCheckBox.type == "checkbox") return; //add // if (objNode.checked=false) objPraentCheckBox.checked=false; objParentCheckBox.checked = false; setParentUnChecked(objParentCheckBox); } function setChildCheckedState(div,state) { var objchild = div.childNodes; var count = objchild.length; for(var i=0;i<objchild.length;i++) { var tempObj = objchild[i]; if(tempObj.tagName=="INPUT" && tempObj.type == "checkbox") { tempObj.checked = state; } // debugger; setChildCheckedState(tempObj,state); } } function TreeNodeChecked() { var objNode = window.event.srcElement; if(objNode.tagName!="INPUT" || objNode.type!="checkbox") return; // debugger; if(objNode.checked == true) { setParentChecked(objNode); } else { setParentUnChecked(objNode); } var objID = objNode.getAttribute("ID"); var objParentDiv = document.getElementById(objID.replace("CheckBox","Nodes")); if(objParentDiv==null || typeof(objParentDiv) == "undefined") return; setChildCheckedState(objParentDiv,objNode.checked); } function SetTreeNodeChecked(objNode1) { var objNode =objNode1; var objID = objNode.getAttribute("ID"); var objParentDiv = document.getElementById(objID.replace("CheckBox","Nodes")); if(objParentDiv==null || typeof(objParentDiv) == "undefined") return; setChildCheckedState(objParentDiv,objNode.checked); } function GetYHQS(id) { PageMethods.CallYHQX(id,callsuccessed); } function callsuccessed(result) { // //循环页面 //debugger; for (i=0;i<document.form1.length ;i++) { var objNode=document.form1.elements[i]; if (objNode.tagName=="INPUT" && objNode.type=="checkbox") { objNode.checked=false; } } for (i=0;i<document.form1.length ;i++) { var objNode=document.form1.elements[i]; if (objNode.tagName=="INPUT" && objNode.type=="checkbox") { //找到 //比较 if (result.indexOf(objNode.title)!=-1) { objNode.checked=true; SetTreeNodeChecked(objNode); } } } } function test() { debugger; //循环页面 for (i=0;i<document.form1.length ;i++) { var objNode=document.form1.elements[i]; if (objNode.tagName=="INPUT" && objNode.type=="checkbox") { //找到 //比较 objNode.checked=true; } } }
相关文章推荐
- js实现权限树的更新权限时的全选全消功能
- js实现权限树的添加权限时的全选全消功能
- js实现全选和反选功能
- js实现checkbox全选功能
- Js实现Repeater全选/反选 功能 终极解决方案
- js实现全选、反选功能(批量删除)
- (14)JS实现全选功能
- Js 实现一组checkBox全选、不选、反选功能
- 针对Vue的后台权限功能实现思路(持续更新) 3ff8
- JS小功能(checkbox实现全选和全取消)实例代码
- JS小功能(checkbox实现全选和全取消)实例代码
- js, jQuery实现全选、反选功能
- 利用JS实现全选相关功能
- 一个较简单的js实现checkbox的全选与全不选功能
- 使用js实现checkbox的全选与反选功能
- 使用js实现全选、反选功能
- js 实现全选、全不选、反选功能
- 表格内自定义多选按钮样式,实现全选功能,纯表格内容js分页
- JS实现CheckBox复选框全选全不选功能