// 親ノードID(0000)、追加する子ノードID(0000)、caption、url、孫がいるかどうかフラグ、ハイライト function addChildNode(id, c_id, caption, url, dir, sel) { node = document.getElementById(id); if (dir) { img = ''; } else { img = ''; } s = '
' + img + '
'; node.innerHTML += s; v = node.firstChild; if ((v.src) && (0 <= v.src.indexOf('plus'))) { v.src = 'img/minus.gif'; } } function openNode(node) { node.firstChild.src = 'img/minus.gif'; node.style.overflow = ''; node.style.height = ''; } function closeNode(node) { node.firstChild.src = 'img/plus.gif'; node.style.overflow = 'hidden'; node.style.height = '15px'; } function openTreeview() { nodes = document.getElementById('treebox').getElementsByTagName('div'); for (i = 0; i < nodes.length; i++) { v = nodes.item(i); if (v.id == '') { continue; } if (!v.firstChild.src) { continue; } if (0 <= v.firstChild.src.indexOf('plus')) { openNode(v) } } } function closeTreeview() { nodes = document.getElementById('treebox').getElementsByTagName('div'); for (i = 0; i < nodes.length; i++) { v = nodes.item(i); if (v.id == '') { continue; } if (!v.firstChild.src) { continue; } if (0 <= v.firstChild.src.indexOf('minus')) { closeNode(v) } } } function onclickNode(id) { node = document.getElementById(id); c_node = node.getElementsByTagName('div'); if (0 <= node.firstChild.src.indexOf('plus')) { openNode(node); } else { closeNode(node); } if (c_node.length == 0) { xml_treeview(id); } } function xml_treeview(id, openmode){ httpObj = createXMLHttpRequest(cb_treeview); if (httpObj){ if (openmode == undefined) { open_para = ''; } else { open_para = '&openmode='+openmode; } httpObj.open("GET",'tooltree.php?id='+id+open_para,true); httpObj.send(null); } } function cb_treeview(){ if (httpObj.readyState == 4){ switch(httpObj.status){ case 200: xmlData = httpObj.responseXML; xml_node = xmlData.getElementsByTagName("node"); xml_up = xmlData.getElementsByTagName("up_id"); xml_id = xmlData.getElementsByTagName("id"); xml_title = xmlData.getElementsByTagName("title"); xml_url = xmlData.getElementsByTagName("url"); xml_child_cnt = xmlData.getElementsByTagName("child_cnt"); xml_selected = xmlData.getElementsByTagName("selected"); for (i=0; i 0); selected_flg = false; if (xml_selected[i].childNodes[0].nodeValue == "true") { selected_flg = true; } addChildNode(c_up, c_id, c_title, c_url, c_is_child, selected_flg); } break; } } }