<! -- Tree. jsp -->
<% @ Page contentType = "text/html; charset = gb2312" %>
<% @ Page import = "java. util. *;" %>
<! Doctype html public "-// W3C // dtd html 4.0 Transitional // EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<Meta name = "Generator" CONTENT = "EditPlus">
<Meta name = "Author" CONTENT = "">
<Meta name = "Keywords" CONTENT = "">
<Meta name = "Description" CONTENT = "">
</HEAD>
<BODY>
<Iframe width = "100%" height = "100" id = "hiddenframe"> </iframe>
<Script>
Function ExpandNode (ParentNode, ParentId ){
Var NodeX = eval (ParentNode. id + '_ 0 ');
If (NodeX. style. display = 'None ')
{
NodeX. style. display = "block ";
If (NodeX. loaded = 'no ')
{
Document. frames ['dendenframework']. location. replace ("subtree. jsp? PID = "+ ParentId +" & PNode = "+ ParentNode. id );
NodeX. loaded = 'yes ';
}
}
Else
{
NodeX. style. display = 'none ';
}
}
</Script>
<CENTER>
<TABLE border = "1" width = "20%" height = "60%">
<TR>
<TD>
<DIV style = "OVERFLOW: auto; WIDTH: 100%; HEIGHT: 100%">
& Lt; TABLE width = "300%" & gt;
<TR>
<TD>
<%
Java. lang. Class. forName ("sun. jdbc. odbc. JdbcOdbcDriver ");
// Java. SQL. connection ConnectionX = java. SQL. driverManager. getConnection ("jdbc: ODBC: driver = {Microsoft Access Driver (*. mdb)}; DBQ = D: ResindocexamplesTreetree. mdb "," admin ","");
// Java. SQL. Statement StatementX = ConnectionX. createStatement ();
Java. SQL. resultSet ResultSetX = java. SQL. driverManager. getConnection ("jdbc: ODBC: driver = {Microsoft Access Driver (*. mdb)}; DBQ = e: resin-2.1.6docexamplesTreetree.mdb "," admin "," "2.16.createstatement(.exe cuteQuery (" select *, (select count (*) from tree where parentid = T. id) as children from tree T where parentid = 0 ");
Int I = 0;
Int children;
Int ID;
While (ResultSetX. next ())
{
Children = ResultSetX. getInt ("children ");
ID = ResultSetX. getInt ("id ");
%>
<Div id = 'node _ <% = I %> '> <a href = '#'
<% If (children> 0)
{%>
OnClick = 'pandnode (Node _ <% = I %>, <% = ID %>) '> + </a>
<% ;}
Else {%>
>-</A> <% ;}%>
<A href = '#'
<% If (children> 0)
{%>
OnDblClick = 'expandnode (Node _ <% = I %>, <% = ID %> )'
<% }%>
>
<% = ResultSetX. getString ("remark") %> </a>
</Div>
<Div id = 'node _ <% = I %> _ 0' style = 'display: none' loaded = 'no'>
& Nbsp; loading...
</Div>
<%
I ++;
}
%>
</BODY>
</HTML>
<! -- SubTree. jsp -->
<% @ Page contentType = "text/html; charset = gb2312" %>
<% @ Page import = "java. util. *;" %>
<! Doctype html public "-// W3C // dtd html 4.0 Transitional // EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<Meta name = "Generator" CONTENT = "EditPlus">
<Meta name = "Author" CONTENT = "">
<Meta name = "Keywords" CONTENT = "">
<Meta name = "Description" CONTENT = "">
</HEAD>
<%
String ParentNode = request. getParameter ("PNode ");
Int I;
Int j;
String nSpace = "";
J = ParentNode. length ()-ParentNode. replaceAll ("_", ""). length ();
For (I = 0; I <j; I ++)
NSpace = nSpace + "& nbsp ;";
String sHTML = "";
I = 0;
Java. lang. Class. forName ("sun. jdbc. odbc. JdbcOdbcDriver ");
// Java. SQL. connection ConnectionX = java. SQL. driverManager. getConnection ("jdbc: ODBC: driver = {Microsoft Access Driver (*. mdb)}; DBQ = D: ResindocexamplesTreetree. mdb "," admin ","");
// Java. SQL. Statement StatementX = ConnectionX. createStatement ();
Java. SQL. resultSet ResultSetX = java. SQL. driverManager. getConnection ("jdbc: ODBC: driver = {Microsoft Access Driver (*. mdb)}; DBQ = e: resin-2.1.6docexamplesTreetree.mdb "," admin "," "2.16.createstatement(.exe cuteQuery (" select *, (select count (*) from tree where parentid = T. id) as Children from tree T where parentid = "+ request. getParameter ("PID "));
Int children;
Int ID;
While (ResultSetX. next ())
{Children = ResultSetX. getInt ("children ");
ID = ResultSetX. getInt ("id ");
SHTML = sHTML + "<div id = '" + ParentNode + "_" + (I + 1) + "'>" + nSpace + "<a href = '#'";
If (children> 0)
SHTML = sHTML + "onClick = 'expandnode (" + ParentNode + "_" + (I + 1) + "," + ID + ") '> + ";
Else sHTML = sHTML + "> -";
SHTML = sHTML + "</a> n" + "<a href = '#'";
If (children> 0)
SHTML = sHTML + "onDblClick = 'expandnode (" + ParentNode + "_" + (I + 1) + "," + ID + ")'";
SHTML = sHTML + ">" + ID + ":" + ResultSetX. getString ("remark") + "</a> </div> ";
If (children> 0)
SHTML = sHTML + "<div id = '" + ParentNode + "_" + (I + 1) + "_ 0' style = 'display: none 'loaded = 'no'> "+ nSpace +" & nbsp; loading... </div> ";
%>
<% I ++;
} %>
<BODY>
<Script>
Var x = eval ('parent. '+' <% = ParentNode + "_ 0" %> ');
X. innerHTML = "<% = sHTML %> ";
</Script>
</BODY>
</HTML>