本帖最后由 march_on 于 2012-07-23 21:35:43 编辑

解决方案 »

  1.   

    不知道为什么图片无法显示,右键点击,在新标签页中打开就行了。
    第一次做jsp,各位高手帮帮忙啊
      

  2.   

    http://www.teta.com.cn/teta/common/images/MzTreeView10/MzTreeView10.htm   
    MzTreeView 1.0 树形控件 Demo 这个树的节点有1000多个 但速度很快  使用:  
    1.下载控件,MzTreeView10  
    2.把MzTreeView10整个目录放置在web工程下(图片,js)  
    3.在后台建一个 java类(生成字符串返回给前台)  
    格式如下:  tree.nodes["408_1239"]=" text:显示文本; data:id=自己的ID;URL=转向的URl method:alert('');";  !注意分号和 “”号也都要,自己写方法取得数据库要生存树的表所有记录,然后拼凑,一条记录生成一个这样的节点字符串给JS解析  tree是可以指定的树的名称  
    408 是数据库的父节点id  
    1239 是自己的id  
    text 是显示在页面的节点名称  
    data 跟URL 配和,当点击转向另外地址是 后面自动带参数id=自己的ID;如url.jsp?id=5;  
    mehod 点击后触发的js方法,可自定义执行  默认解析根节点为0(数据库要设置)后台String sqlStr = "select id,parent_id, name from xx where parent_id is not null order by parent_id "; 
    try { 
    HibernateDao.getSession().beginTransaction(); 
    conn = HibernateDao.getSession().connection(); 
    stmt = conn.createStatement(); 
    rs = stmt.executeQuery(sqlStr); 
    while ( rs.next()) { 
    s+="tree.nodes['"+rs.getString("parent_id")+"_"+rs.getString("id")+"'] = 'text:"+rs.getString("name")+";method:myfunc(\""+rs.getString("name")+','+rs.getString("id")+"\")';"; 

    System.out.println(s); 
    conn.commit(); }
    catch( SQLException e)
    { e.printStackTrace(); }
    finally{ 
    try{ if( stmt != null ) 
    stmt.close(); 
    if( rs != null ) 
    rs.close(); 
    if( conn != null ) 
    conn.close(); 
    }catch( SQLException e)

    e.printStackTrace();
     }
     }JSP页面代码<%@ page language="java" pageEncoding="UTF-8"%> 
    <%@ page import="util.*,java.util.*,com.feiji.dto.SysMenuDto,org.dom4j.Document;"%> 
    <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <SCRIPT type="text/javascript" src="<%=basePath %>js/test.js"></SCRIPT> 
    <SCRIPT type="text/javascript" src="<%=basePath %>js/MzTreeView10.js"></SCRIPT>
    <link rel="stylesheet" href="images/total.css" type="text/css"> 
     <style type="text/css">  
     body, td {  font-family: 宋体;  font-size: 12px;  } 
     A:LINK, A:VISITED, A:ACTIVE, A:HOVER {  color:#000;  text-decoration:none;  font-family:arial;  font-size:12px;  padding-left:2px;  }  
     </style> 
     <title>文件</title>
     </head> 
     <body class="body01">
     <table width="100%" border=0 cellspacing=3 bgcolor="#B8D1F8">  
     <tr>  
     <td bgcolor=white valign=top> 
     <div id=treeviewarea style="background-color: "></div>  
     <SCRIPT LANGUAGE="JavaScript"> 
     <!--  var tree = new MzTreeView("tree"); 
     tree.setIconPath("/elearn/course/treeImages/"); 
     tree.nodes['0_1'] = 'text:课程目录1';
     <%  String tree = (String)request.getAttribute("treeList"); out.print(tree); %>  
     document.getElementById('treeviewarea').innerHTML = tree.toString(); 
     function myfunc(n){ 
     window.returnValue= n; 
     window.close(); 
     } //--> 
     </SCRIPT> 
     </tr>  
     </table> 
     </body> 
     </html>
      

  3.   

    需要提醒楼主的是:document.write("df");会清空整个HTML,只剩下 df 两个字。
    所以想输出点调试信息,最好是用:alert("Hello");另外建议楼主把 浏览器自带的调试功能打开,比如IE9是按 F12,然后选Console页,看究竟报了什么错误。
      

  4.   

    谢谢啊,我先把dtree的问题弄明白了再说MzTreeView吧
      

  5.   

    嗯,谢谢你的指点。刚学web开发,很多还不知道啊