请问:梅花雪树型控件2.0 如何获得复选框选中节点的ID信息?请高手解答。。谢谢把生成的树直接放form里提交就可以得到那些框被选中么??

解决方案 »

  1.   

    晕没人用过梅花雪2。0的树型控件么??会用的帮帮小弟 吧~~~~~~~梅花雪大大那个prototype框架的源码看不大明白啊。。
      

  2.   

    就是CSDN左边那个
    http://meizz.aspx.cc/mztreeview2/csdntree.htm
      

  3.   

    各位高手帮帮忙吧~~~~~没人用过么。就是CSDN左边那个树。。
      

  4.   

    复选框是个图片 
    你这么写 然后用鼠标点击一下复选框就可以知道它的id了 如果有的话...
    document.onclick = function()
    {
    var aa = window.event.srcElement;
    if(aa!=null && aa.id!=null)alert(aa.id);
    }
      

  5.   

    谢谢楼上这位diablo大哥,这样可以得到checkbox本身的id。不过我是想要checkbox对应节点的id。难道非得改源码不可么郁闷啦。。
      

  6.   

    mztreeview.js里改,在MzTreeNode.prototype.render方法里增加生成checkbox
      

  7.   

    <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);
            //*/
    function sub()
    {
    document.writeln("*** "+a.selectedNode.id+" ***");
    }
    </script>
    <input type="button" value="submit" onClick="sub()" />我这样用,它的值总是 1 ,这是怎么回事呢?
      

  8.   

    打开这个地址
    http://community.csdn.net/WebConsole/PFTabPage.aspx
    在地址栏输入
    javascript:alert(a.selectedNode.id)
    没问题吗?你怎么做的
      

  9.   

    完整代码如下:<HTML>
        <HEAD>
            <TITLE> MzTreeView 2 </TITLE>
            <meta http-equiv='Content-Type' content='text/html; charset=gb2312'>
            <script src="scripts/jsframework.js"></script>
        </HEAD>    <BODY>
            <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);
    //*/
    function aa()

     for(var   i   in   a.nodes) 

    if(a.nodes[i].checked) //a.nodes[i].checked = true; 
    alert(a.selectedNode.id);
    }
    }
    </script>
    <input type="button" value="submit" onClick="aa()" />
        </BODY>
    </HTML>
    现在我选中复选框后,点提交,它里面弹出的值都是1 
      

  10.   

    能正常取节点ID,现在有了新的问题:(这里我能得到它是否被选中,及它的ID)
    a.expandAll('1');//我让节点全部展开,因为我要设置默认值
    //*/
    for(var i in a.nodes)
    {
    //if(a.nodes[i].id == 14) a.nodes[i].checked=true;
    alert(a.nodes[i].id);//这里我发现弹出的ID值始终只到第二层节点,但是节点确实是全部展开了4层,这是怎么回事呢,这样我取不到节点对象,也就不能设置默认值 ....
    if(parseInt(a.nodes[i].id) == 14)
    a.nodes[i].checked = true;
    }
    function aa()

     for(var   i   in   a.nodes) 

    if(a.nodes[i].checked) //a.nodes[i].checked = true; 
    alert(a.nodes[i].index+" id : "+a.nodes[i].id);
    }
    }
      

  11.   

    javanewlife 
    你是怎么改的可以正常取节点ID了?
      

  12.   

    知道了    a.nodes[i].index