/*****************************************************************************
Name : findObj
Parameters :
- n String object's name
- d Document document
Return : a reference on the object if it exists
Description : Search an object in a document from its name.
Author : Macromedia
*****************************************************************************/function findObj(n, d) {
  var p, i, x;
  if (!d)
    d = document;
  if ( (p=n.indexOf("?") )>0 && parent.frames.length ) {
d = parent.frames[n.substring(p+1)].document;
n = n.substring(0,p);
  }
  if (!(x=d[n])&& d.all )
x = d.all[n];
  for (i=0; !x && i < d.forms.length; i++)
x = d.forms[i][n];
  for (i=0; !x && d.layers && i<d.layers.length; i++)
x = findObj(n, d.layers[i].document);  return x;
}/*****************************************************************************
Name : isInSelectInput
Parameters :
- v String Option value
- select_input input SELECT
Return : true if the SELECT already value
Author : Jean-Michel Garnier
*****************************************************************************/function isInSelectInput(v, select_input) {
for(var i=0; i<select_input.options.length; i++) {
if (select_input.options[i].value == v) {
return true;
}
}
return false;
}/*****************************************************************************
Name : selectOption
Parameters :
- v_value String Option value
- select_input SELECT
Description : Select all options whose value
Author : Jean-Michel Garnier
*****************************************************************************/function selectOption(v_value, select_input) 
   {
var i, nb_item;
nb_item = select_input.options.length;
for (i = 0; i < nb_item ; i++) {
if ( select_input.options[i].value == v_value )
select_input.options[i].selected = true;
}
}/*****************************************************************************
Name : selectRemoveSelectedOption
Parameters : select_input SELECT
Description : removes all the selected options
Author : Jean-Michel Garnier
*****************************************************************************/function selectRemoveSelectedOption(select_input) {
    for(var i=0; i<select_input.options.length; i++) {
        if ( select_input.options[i].selected ) {
   select_input.options[i] = null;
    }
}
select_input.selectedIndex = -1;
}/*****************************************************************************
Name : selectRemoveAll
Parameters : select_input
Description : This Function removes all options
Author : Jean-Michel Garnier
*****************************************************************************/function selectRemoveAll(select_input) {    var linesNumber = select_input.options.length;
    for(i=0; i < linesNumber; i++) {
select_input.options[0] = null;
    }
select_input.selectedIndex = -1;
}/*****************************************************************************
Name : buildXMLSource
Parameters : xmlSource_name, String, can be a file name (.xml or .xslt) or
a String containing the xml 
!!!BE SURE xml and xlt are lowercase
Return : a reference on a ActiveX Msxml2.FreeThreadedDOMDocument with the xml loaded
Author : Jean-Michel Garnier
*****************************************************************************/function buildXMLSource(xmlSource_name) {    var obj, file_extension;
    obj = new ActiveXObject("Msxml2.FreeThreadedDOMDocument");
    obj.async = false;
    obj.resolveExternals = false;    file_extension = stringExtract(xmlSource_name, 1, ".");
    // if there is a file extension, then load the file
    if (file_extension == "xml" || file_extension == "xslt" ) {
        obj.load(xmlSource_name);
    }
    else {
        // else load the XML String
        obj.loadXML(xmlSource_name);
    }    return obj;
}

解决方案 »

  1.   

    /*****************************************************************************
    Name : transform
    Parameters :
    - xmlSource Msxml2.FreeThreadedDOMDocument ActiveX XML
    - xsltSource Msxml2.FreeThreadedDOMDocument ActiveX XSLT
    Return : String with the result of the transformation (not an ActiveX object !)
    Description :Author : Jean-Michel Garnier
    *****************************************************************************/function transform(xmlSource, xsltSource) {    var xslt;
        var xslProc, paramName, paramValue;    // Create XLST
        xslt = new ActiveXObject("Msxml2.XSLTemplate");
        xslt.stylesheet = xsltSource;    // Add parameters
        xslProc = xslt.createProcessor();    xslProc.input = xmlSource;    // add parameters if present
        if (arguments.length >2 && arguments.length % 2 == 0){
            for (var i=0; i < Math.floor((arguments.length)/2)-1; i++){
                paramName = arguments[2*i+2];
                paramValue = arguments[2*i+3];
                xslProc.addParameter(paramName, paramValue);
            }
        }    xslProc.transform();
        return xslProc.output;
    }function BrowserDetectLite() {
    var ua = navigator.userAgent.toLowerCase(); // browser name
    this.isGecko     = (ua.indexOf('gecko') != -1);
    this.isMozilla   = (this.isGecko && ua.indexOf("gecko/") + 14 == ua.length);
    this.isNS        = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('opera') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) );
    this.isIE        = ( (ua.indexOf("msie") != -1) && (ua.indexOf("opera") == -1) && (ua.indexOf("webtv") == -1) );
    this.isOpera     = (ua.indexOf("opera") != -1);
    this.isKonqueror = (ua.indexOf("konqueror") != -1);
    this.isIcab      = (ua.indexOf("icab") != -1);
    this.isAol       = (ua.indexOf("aol") != -1);
    this.isWebtv     = (ua.indexOf("webtv") != -1); // spoofing and compatible browsers
    this.isIECompatible = ( (ua.indexOf("msie") != -1) && !this.isIE);
    this.isNSCompatible = ( (ua.indexOf("mozilla") != -1) && !this.isNS && !this.isMozilla); // browser version
    this.versionMinor = parseFloat(navigator.appVersion); // correct version number
    if (this.isNS && this.isGecko) {
    this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('/') + 1 ) );
    }
    else if (this.isIE && this.versionMinor >= 4) {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('msie ') + 5 ) );
    }
    else if (this.isMozilla) {
          this.versionMinor = parseFloat( ua.substring( ua.indexOf('rv:') + 3 ) );
       }
       else if (this.isOpera) {
    if (ua.indexOf('opera/') != -1) {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera/') + 6 ) );
    }
    else {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera ') + 6 ) );
    }
    }
    else if (this.isKonqueror) {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('konqueror/') + 10 ) );
    }
    else if (this.isIcab) {
    if (ua.indexOf('icab/') != -1) {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab/') + 6 ) );
    }
    else {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab ') + 6 ) );
    }
    }
    else if (this.isWebtv) {
    this.versionMinor = parseFloat( ua.substring( ua.indexOf('webtv/') + 6 ) );
    } this.versionMajor = parseInt(this.versionMinor);
    this.geckoVersion = ( (this.isGecko) ? ua.substring( (ua.lastIndexOf('gecko/') + 6), (ua.lastIndexOf('gecko/') + 14) ) : -1 ); // dom support
       this.isDOM1 = (document.getElementById);
    this.isDOM2Event = (document.addEventListener && document.removeEventListener);   // css compatibility mode
       this.mode = document.compatMode ? document.compatMode : 'BackCompat'; // platform
    this.isWin   = (ua.indexOf('win') != -1);
    this.isWin32 = (this.isWin && ( ua.indexOf('95') != -1 || ua.indexOf('98') != -1 || ua.indexOf('nt') != -1 || ua.indexOf('win32') != -1 || ua.indexOf('32bit') != -1 || ua.indexOf('xp') != -1) );
    this.isMac   = (ua.indexOf('mac') != -1);
    this.isUnix  = (ua.indexOf('unix') != -1 || ua.indexOf('linux') != -1 || ua.indexOf('sunos') != -1 || ua.indexOf('bsd') != -1 || ua.indexOf('x11') != -1) // specific browser shortcuts
    this.isNS4x = (this.isNS && this.versionMajor == 4);
    this.isNS40x = (this.isNS4x && this.versionMinor < 4.5);
    this.isNS47x = (this.isNS4x && this.versionMinor >= 4.7);
    this.isNS4up = (this.isNS && this.versionMinor >= 4);
    this.isNS6x = (this.isNS && this.versionMajor == 6);
    this.isNS6up = (this.isNS && this.versionMajor >= 6);
    this.isNS7x = (this.isNS && this.versionMajor == 7);
    this.isNS7up = (this.isNS && this.versionMajor >= 7); this.isIE4x = (this.isIE && this.versionMajor == 4);
    this.isIE4up = (this.isIE && this.versionMajor >= 4);
    this.isIE5x = (this.isIE && this.versionMajor == 5);
    this.isIE55 = (this.isIE && this.versionMinor == 5.5);
    this.isIE5up = (this.isIE && this.versionMajor >= 5);
    this.isIE6x = (this.isIE && this.versionMajor == 6);
    this.isIE6up = (this.isIE && this.versionMajor >= 6); this.isIE4xMac = (this.isIE4x && this.isMac);
    }
    function selectLeaf(title, code) 
    {
    // alert("You just clicked on title :" + title + "with code = " + code);
                   就是这里了,大家谁能帮帮忙啊谢谢了! }



    // This function is must be implemented if you use the "code" attribute into folder elements.
    // It is Treeview every time you click on a folder
    function selectFolder(folderCode) {
    // alert("You just clicked on a folder with code :" + folderCode);
    } //add by CY chang bgcolor  2003/07/31
    function changeBgcolor(obj,mouseflag) //鼠标滑动时改变颜色
    {
    if(mouseflag=='enter')
    {
    if(obj==window.currentSelectedFontObj)
    return;
    else
    obj.style.backgroundColor = "#87CEFA";
    }
    else if(mouseflag=='out')
    {
    if(obj==window.currentSelectedFontObj)
    return;
    else
    obj.style.backgroundColor = "";
    } } function selectedObject(obj) //设当前选中的颜色
    {
    if(window.currentSelectedFontObj==null)    
    {
    window.currentSelectedFontObj = obj;
    obj.style.backgroundColor = "#FFA07A";
    }
    else
    {
    window.currentSelectedFontObj.style.backgroundColor = "";
    window.currentSelectedFontObj = obj;
    obj.style.backgroundColor = "#FFA07A";
    }
    } function click_act(obj,id)
    {
    selectedObject(obj); //设当前选中的颜色
    setCookies();
        treeNodeClick(id);
    } function dblclick_act(obj,id)
    {
    selectedObject(obj); //设当前选中的颜色
    setCookies();
    treeNodeDblClick(id); 
    } function setCookies()
    {
    var str = "";
    var temp = "";
    for(var j=0;j<document.all.length;j++) //把所有expand为true找到
    {
    if(document.all[j].tagName=="DIV")
    {
    if(document.all[j].style.display == 'block')
    {
    temp = document.all[j].name;
    temp = temp.substr(4);
    str = str + "," + temp;
    }
    }
    } str = str.substr(1); //去第一个"," date = new Date(); //给cookie设过期时间
    date.setHours(30);
    document.cookie = "SXKXTree_ExpandID" + "=" + str +"; expires=" + date.toGMTString();
    }
      

  2.   

    能不能简洁一点&&明白一点?
      

  3.   

    我就是想在选择父亲节点上的checkbox,同时把所有的子节点的checkbox也选上