请大家帮帮忙,我是菜鸟,急用! 谢谢!!!

解决方案 »

  1.   

    手边没有,当时我是baidu找到的。
    要求数据量不大,1次可以把全部纪录读如内存。
    思路:用3唯数组存你的字段,上级ID,下级ID,需要显示的汉字
    上级下拉里面就是正常的下拉,下级里面是个空的下拉。
    上级下拉里面有个方法去你的数组里面查找上级ID相同的那些纪录,把那些填充进下级下拉里面。描述的不好,baidu有完整的例子。我以前也在csdn别人问的时候发过。
      

  2.   

    http://blog.csdn.net/jiqimiao/archive/2007/04/26/1585665.aspx有源码在上面的
      

  3.   

    数据库链接,sql语句改改就可以用了,希望楼下的有“拿来就能用的”
      

  4.   

    http://topic.csdn.net/u/20071101/19/d2621a39-1d8a-4cee-8b19-0f577159fb26.html这里有 我刚搞定
      

  5.   

    这个是书里面的例子,楼主照着改改就行了
    我原来发帖子问,别人的没调试好照着书 改改就ok了  祝你好运
    源文件:dyList.jsp<%@ page contentType="text/html;charset=UTF-8" language="java" %><head>     <META http-equiv=Content-Type content="text/html; charset=UTF-8"></head><script language="javascript">      var XMLHttpReq;      //创建XMLHttpRequest对象             function createXMLHttpRequest() {             if(window.XMLHttpRequest) { //Mozilla 浏览器                    XMLHttpReq = new XMLHttpRequest();             }             else if (window.ActiveXObject) { // IE浏览器                    try {                           XMLHttpReq = new ActiveXObject("Msxml2.XMLHTTP");                    } catch (e) {                           try {                                   XMLHttpReq = new ActiveXObject("Microsoft.XMLHTTP");                           } catch (e) {}                    }             }      }      //发送请求函数      function sendRequest(url) {             createXMLHttpRequest();             XMLHttpReq.open("GET", url, true);             XMLHttpReq.onreadystatechange = processResponse;//指定响应函数             XMLHttpReq.send(null);  // 发送请求      }      // 处理返回信息函数      function processResponse() {       if (XMLHttpReq.readyState == 4) { // 判断对象状态             if (XMLHttpReq.status == 200) { // 信息已经成功返回,开始处理信息                    updateList();            } else { //页面不正常                  window.alert("您所请求的页面有异常。");            }         }    }    // 刷新列表框函数    function refreshList() {         var sort = document.getElementById("sort").value;         if(sort == "" ) {                clearList();                return;         }         var url = "dyList?sort=" + sort;                    sendRequest(url)      }    // 更新列表框中列表项函数     function updateList() {          clearList();          var product = document.getElementById("product");          var results = XMLHttpReq.responseXML.getElementsByTagName("name");          var option = null;           for(var i = 0; i < results.length; i++) {               option = document.createElement("option");               option.appendChild(document.createTextNode(results[i].firstChild. nodeValue));               product.appendChild(option);          }     }    // 清除列表框中原有选项的函数     function clearList() {          var product = document.getElementById("product");          while(product.childNodes.length > 0) {               product.removeChild(product.childNodes[0]);          }     } </script> <table  style="BORDER-COLLAPSE: collapse" borderColor=#111111             cellSpacing=0 cellPadding=2 width=200 bgColor=#f5efe7 border=0>    <TR>         <TD align=middle height=4 colspan="2"><IMG height=4          src="images/promo_list_top.gif" width="100%"          border=0>          </TD>    </TR>    <TR>       <TD align=middle bgColor=#dbc2b0                        height=19 colspan="2"><B>商品搜索</B>       </TD>    </TR>    <tr>        <td height="20">                   品牌选择:         </td>         <td height="20">                <select id="sort" onchange="refreshList();">                       <option value="default">请选择</option>                       <option value="IBM">IBM</option>                       <option value="SONY">SONY</option>                       <option value="联想">联想</option>                </select>          </td>     </tr>     <tr>          <td height="20">                 商品信息:          </td>          <td height="20">          <select id="product" >          </select>          </td>     </tr> </table>在该页面中,第一个列表框中提供了对应的品牌选项以供用户进行选择,当用户选择了所需的品牌信息后,将调用“refreshList()”函数,在该函数中首先获取到所选列表项的标志信息,如果用户选择的是“请选择”,则调用“clearList()”函数清除第二个列表框中的内容,如果用户选择的是有效的品牌选项,则借助Ajax提交请求,并同时提交用户所选选项的标识信息到服务器端,等待服务器端的处理。当服务器端后续处理完成后,将返回第二个列表框中的信息,然后在Ajax提供的处理函数中在对应的列表框中显示,在显示时使用了本书第3章中介绍的使用DOM操作HTML的方式。该Web应用的配置文件web.xml对应的代码如下所示。从该配置文件中可以了解到,当浏览器端提交“dyList”请求时,将由服务器端的类名为“classmate.DyListAction”的Servlet程序进行处理。<?xml version="1.0" encoding="UTF-8"?><web-app version="2.4"      xmlns="http://java.sun.com/xml/ns/j2ee"      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee      http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">      <servlet>         <servlet-name>ms1</servlet-name>         <servlet-class>classmate.DyListAction</servlet-class>     </servlet>     <servlet-mapping>          <servlet-name>ms1</servlet-name>          <url-pattern>/dyList</url-pattern>     </servlet-mapping>  <!-- The Welcome File List -->  <welcome-file-list>    <welcome-file>dyList.jsp</welcome-file>  </welcome-file-list></web-app>下面我们关注一下服务器端Servlet程序DyListAction.java中对应的程序代码。当接收到浏览器端提交的请求后,Servlet程序首先获取浏览器端提交的所选列表项的标志信息,即所选择的商品类别信息,然后借助封装了数据库操作的JavaBean完成数据库的查询工作,依据类别获取到对应的商品名称信息。package classmate; import java.io.IOException;…… public class DyListAction extends HttpServlet {          public void init(ServletConfig config) throws ServletException {     }     /*     *  处理<GET> 请求方法     */    protected void doGet(HttpServletRequest request, HttpServletResponse response)    throws ServletException, IOException {     //设置接收信息的字符集     request.setCharacterEncoding("UTF-8");     //接收浏览器端提交的信息           String sort = request.getParameter("sort");           //设置输出信息的格式及字符集                 response.setContentType("text/xml; charset=UTF-8");         response.setHeader("Cache-Control", "no-cache");         //创建输出流对象         PrintWriter out = response.getWriter();         //依据验证结果输出不同的数据信息         out.println("<response>");                       //数据库操作         DB db = new DB();          ResultSet rs;         String strSql=null;         //查找该品牌具体型号         strSql ="select product.name,product.id from sort,product where sort.id=
                            product.sortid and sort.name='"+ sort + "'";          rs = db.executeQuery(strSql);          try {                while (rs.next()) {                       out.println("<name>" + rs.getString("name") + "</name>");                }          } catch (SQLException e) {                e.printStackTrace();          }           out.println("</response>");          out.close();    }}注意在本例中,返回的XML文档的格式如下所示:<response>       <name>商品名称1</ name>       <name>商品名称2</name></response>
      

  6.   

    我现在的项目也要求这个功能
    不过只能用JSP,不用XML和.JAVA类
    哪位大侠能帮帮忙啊