我看了您在CSDN上的回复:
var a = new MzTreeView();
//..... 最后想得到被选中的节点的数据可以这样: for(var i in a.nodes)
{
if(a.nodes[i].checked) alert(a.nodes[i].id);
}但是我用它不行,a.nodes取不到对象,这怎么回事?
现在公司做权限,我在网上找到了MZTREEVIEW 2.0 ,但是 checkbox 我现在要得到它被选中的值,并且还要能设置它的默认选中值,请指点。
var a = new MzTreeView();
//..... 最后想得到被选中的节点的数据可以这样: for(var i in a.nodes)
{
if(a.nodes[i].checked) alert(a.nodes[i].id);
}但是我用它不行,a.nodes取不到对象,这怎么回事?
现在公司做权限,我在网上找到了MZTREEVIEW 2.0 ,但是 checkbox 我现在要得到它被选中的值,并且还要能设置它的默认选中值,请指点。
如: <SCRIPT LANGUAGE="JavaScript">
var data={};
data["-1_1"] = "text: 我的技术社区 xml; XMLData: tree.xml ";
data['1_1002'] = 'text: 我的技术社区 xml; XMLData: tree.xml ';
//*
Using("System.Web.UI.WebControls.MzTreeView");
var a = new MzTreeView();
a.dataSource = data; // a.setJsDataPath("scripts/csdn/community/treedata/");
a.setXmlDataPath("xmlData");
//a.rootId="1";
a.autoSort=false;
a.useCheckbox=true;
a.canOperate=true;
document.write(a.render());
a.expandLevel(2);
//*/
for(var i in a.nodes)
{
if(!a.nodes[i].checked) a.nodes[i].checked = true;
}
for(var i in a.nodes)
{
if(a.nodes[i].checked) alert(a.nodes[i].value);
}
</script>
干脆生成节点时候另外要生成一个隐藏的checkbox,取值方便的多
MZTREEVIEW1.0上的 我点击父checkbox时 其子chekbox由于第一次没有被加载,而没被选中
我跟你的问题又是一样的哦, 你是在做什么项目啊???????????????
???????????????????????????????????????????????????????????????
你的代码都没有错误,问题就在于你的“alert(a.nodes[i].value);”代码,你要查看你的绑定源的数据绑定的是什么标签,然后你就读取相应的标签值。
例如:data['1_1002'] = 'text: 我的技术社区 id:1002 ';,则alert(a.nodes[i].id)
2.判断当前节点是否有子节点:node.hasChild属性判断;
然后判断当前节点是否展开:node.expanded属性判断;
如果没有展开,则取不到下级节点,所以可以调用MzTreeView实例对象的函数:expand(node.id)展开节点,
然后就可以进行其他操作了
node.check(true);