您的位置:首页 > 其它

(转)对微软那棵TreeView进行试用,主要是对CheckBox进行操作

2006-10-25 04:07 429 查看
总结这次的工作,明白了几个关键的地方:
1.如果在服务器端进行CheckBox的初始化,这样操作就会导致在客户端进行node.getAttribute("checked")时总是得到True,这样就达不到客户端操作的目的.
2.如果想在生成树的时候对某些节点进行CheckBox的初始化选中,就需要在客户端进行遍历树的操作(构造生成树的同时进行).
3.在客户端对树的节点进行选中与取消选中的操作时,必须同时进行一个必要的操作:Tree.queueEvent('oncheck',node.getNodeIndex()),这样做的目的使你在客户端进行树操作的同时,能让服务器端也同时知道操作了哪些节点,以便在服务器端进行遍历的同时能知道哪些节点被选中.
4.以及'checked'的大小写问题也会对树的状态改变有所影响.

之后又对代码进行了优化,我把生成树时的初始化操作,以及保存选中状态都放在了客户端进行!

第一次发表文章,请各位前辈多多指导,多多帮助

var strArray = new Array();
var strList = "";

function tree_oncheck()
//===============================================//
//在点击子节点时,让父节点的状态也随子节点的状态而变化
//===============================================//
function setParent(el,state)

//===========================================//
//检查兄弟节点状态
//===========================================//
function checkSiblingdNode(el)
//=============================================//
//点击父节点时,对其子节点状态进行同步改变
//=============================================//
function setcheck(node,Pc)
//==========================================//
//需要对某些节点做初始化处理时
//==========================================//
function onload()
//============================================//
//组合数组
//============================================//
function SetArray()
//==============================================//
//遍历整棵树,进行节点的Checked的初始化设置//
//==============================================//
function SetTree(node)
//====================================================//
//保存节点状态(保证在回传时节点状态依然存在)
//====================================================//
function saveCheckState(el)
//====================================================//
//点击保存按钮时对所选中的节点进行整理
//====================================================//
function FindChecked()
function CheckedAll(node)
var i = 0;
var strID;
var childNodes = new Array();
childNodes = node.getChildren();

if( parseInt(childNodes.length) != 0 )
for( i=0; i<parseInt(childNodes.length); i++ )
CheckedAll(childNodes[i]);
}
}
else
if( node.getAttribute("checked") == true )
strID = node.getAttribute("id");
strList = strList + strID + ",";
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐