<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        AJAX級聯下拉框的簡單實現案例

        來源:懂視網 責編:小采 時間:2020-11-27 22:52:13
        文檔

        AJAX級聯下拉框的簡單實現案例

        AJAX級聯下拉框的簡單實現案例:需要的JAVA類 代碼如下:package com.ajaxlab.ajax; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import org.jdom.Document; import org.jdom.Element;
        推薦度:
        導讀AJAX級聯下拉框的簡單實現案例:需要的JAVA類 代碼如下:package com.ajaxlab.ajax; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import org.jdom.Document; import org.jdom.Element;

        需要的JAVA類
        代碼如下:
        package com.ajaxlab.ajax;
        import java.util.ArrayList;
        import java.util.Collection;
        import java.util.Iterator;
        import org.jdom.Document;
        import org.jdom.Element;
        import org.jdom.input.SAXBuilder;
        import com.ajaxlab.ajax.ProductClass;

        public class ClassService {
           private Document dom;
           public ClassService(){
            try{
             SAXBuilder builder=new SAXBuilder();
             this.dom=builder.build(ClassService.class.getResource("product.xml"));
            }catch(Exception e){
            e.printStackTrace();
            }
           }
           public ProductClass[] getAllClass1(){
            Collection products=new ArrayList();
            Iterator iterator=this.dom.getRootElement().getChildren().iterator();
            do{
             Element element=(Element)iterator.next();
             ProductClass product=new ProductClass(element.getAttributeValue("id"),
                                             element.getAttributeValue("className"));  
                products.add(product);
            }while(iterator.hasNext());
            return (ProductClass[])products.toArray(new ProductClass[0]);

           }

           public ProductClass[] getAllClass2ById(String class1Id){
            Collection products=new ArrayList();
            Element classElement=null;
            Iterator iterator=this.dom.getRootElement().getChildren().iterator();
            do{
             Element element=(Element)iterator.next();
             if(class1Id.equalsIgnoreCase(element.getAttributeValue("id"))){
              classElement=element;
              break;
             }
            }while(iterator.hasNext());

            if(classElement!=null){
             Iterator iter=classElement.getChildren().iterator();
             do{
              Element element=(Element)iter.next();
              ProductClass product=new ProductClass(element.getAttributeValue("id"),
                                              element.getAttributeValue("className"));
                       products.add(product);
             }while(iter.hasNext());
            return (ProductClass[])products.toArray(new ProductClass[0]);
            }
            else{
             return null;
            }
           }

         
           public ProductClass[] getAllClass3ById(String class1Id,String class2Id) {
          Collection products = new ArrayList();
          Element class1Element = null;
          Element class2Element = null;

          Iterator iterator = this.dom.getRootElement().getChildren().iterator();
          do {
           Element element = (Element)iterator.next();
           if(class1Id.equalsIgnoreCase(element.getAttributeValue("id"))) {
            class1Element = element;
            break;
           }
          }while(iterator.hasNext());

          if(class1Element!=null) {
           Iterator iter = class1Element.getChildren().iterator();
           do {
            Element element = (Element)iter.next();
            if(class2Id.equalsIgnoreCase(element.getAttributeValue("id"))) {
             class2Element = element;
             break;
            }
           }while(iter.hasNext());

           if(class2Element!=null) {
            Iterator iter2 = class2Element.getChildren().iterator();
            do {
             Element element = (Element)iter2.next();
             ProductClass product = new ProductClass(element.getAttributeValue("id"),element.getAttributeValue("className"));
             products.add(product);
            }while(iter2.hasNext());
           }
           return (ProductClass[])products.toArray(new ProductClass[0]);
          }
          else return null;
        }
        }


        <?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE class SYSTEM "product.dtd" >
        <class>
          <class1 className="電腦配件" id="1">
             <class2 className="內存" id="1">
               <class3 id="1" className="kingmax"></class3>
               <class3 id="2" className="kingston"></class3>
               <class3 id="3" className="samsung"></class3>
               <class3 id="4" className="hydadi"></class3>
               <class3 id="5" className="ibm"></class3> 
             </class2>
             <class2 className="硬盤" id="2">
               <class3 id="6" className="hithait"></class3>
               <class3 id="7" className="IBM"></class3>
               <class3 id="8" className="samsung"></class3>
               <class3 id="9" className="westdata"></class3>
             </class2>
          </class1>

          <class1 className="食品配件" id="2">
             <class2 className="漢堡包" id="1">
               <class3 id="1" className="麥當勞"></class3>
               <class3 id="2" className="肯得基"></class3>
               <class3 id="3" className="羅杰絲"></class3>
             </class2>
             <class2 className="飲料" id="2">
               <class3 id="4" className="cocacola"></class3>
               <class3 id="5" className="sprite"></class3>
               <class3 id="6" className="coffee"></class3>
               <class3 id="7" className="water"></class3>
             </class2>
          </class1>
        </class>


        <?xml version="1.0" encoding="GB2312" ?>
        <!ELEMENT class (class1+)>
        <!ELEMENT class1 (class2+)>
        <!ATTLIST class1 className NMTOKEN #REQUIRED>
        <!ATTLIST class1 id NMTOKEN #REQUIRED>
        <!ELEMENT class2 (class3+)>
        <!ATTLIST class2 className NMTOKEN #REQUIRED>
        <!ATTLIST class2 id NMTOKEN #REQUIRED>
        <!ELEMENT class3 EMPTY>
        <!ATTLIST class3 className NMTOKEN #REQUIRED>
        <!ATTLIST class3 id NMTOKEN #REQUIRED>

        JSP:
        (1)getClass.jsp 充當業務層供ajax調用
        <%@ page contentType="text/html; charset=gb2312"%>
        <%@ page import="com.ajaxlab.ajax.*"%>
        <%
        String class1Id = request.getParameter("class1Id");
        String class2Id = request.getParameter("class2Id");
        if("".equals(class1Id)) class1Id = null;
        if("".equals(class2Id)) class2Id = null;
        ClassService service = new ClassService();
        if((class1Id!=null)&&(class2Id==null)) {
        ProductClass[] classes = service.getAllClass2ById(class1Id);
        if(classes!=null) {
          for(int i=0;i<classes.length;i++) {
           out.print(classes[i].getId()+","+classes[i].getClassName()+"|");
          }
        }
        }
        else if((class1Id!=null)&&(class1Id!=null)) {
        ProductClass[] classes = service.getAllClass3ById(class1Id,class2Id);
        if(classes!=null) {
          for(int i=0;i<classes.length;i++) {
           out.print(classes[i].getId()+","+classes[i].getClassName()+"|");
          }
        }
        }
        %>

        (2)divmenu.jsp
        <%@ page contentType="text/html; charset=gb2312"%>
        <%@ page import="com.ajaxlab.ajax.*"%>
        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
        <html>
        <head>
        <script type="text/javascript" src="ajax_func.js" ></script>
        <script type="text/javascript">

        function doChange() {
        var f = document.forms[0];
        send_request("GET","getClass.jsp?class1Id="+f.select11.value+"&class2Id=",null,"TEXT",populateClass2);
        }
        function doChange2() {
        var f = document.forms[0];
        send_request("GET","getClass.jsp?class1Id="+f.select11.value+"&class2Id="+f.select12.value,null,"TEXT",populateClass3);
        }
        function populateClass2(){
             var f=document.forms[0];
             if(http_request.readystate==4){
               if(http_request.status==200){
                  var list=http_request.responseText;
                  var classList=list.split("|");
                  f.select12.options.length=1;
                  for(var i=0;i<classList.length-1;i++){
                    var temp=Trim(classList[i]).split(",");
                    f.select12.add(new Option(temp[1],temp[0]));
                  }
               }
             }
        }

          function populateClass3(){
             var f=document.forms[0];
             if(http_request.readystate==4){
               if(http_request.status==200){
                  var list=http_request.responseText;
                  var classList=list.split("|");
                  f.select13.options.length=1;
                  for(var i=0;i<classList.length-1;i++){
                    var temp=Trim(classList[i]).split(",");
                    f.select13.add(new Option(temp[1],temp[0]));
                  }
               }
             }
           }
           function LTrim(str)
        {
            var whitespace = new String(" /t/n/r");
            var s = new String(str);
            if (whitespace.indexOf(s.charAt(0)) != -1)
            {
                var j=0, i = s.length;
                while (j < i && whitespace.indexOf(s.charAt(j)) != -1)
                {
                    j++;
                }
                s = s.substring(j, i);
            }
            return s;
        }
        function RTrim(str)
        {
            var whitespace = new String(" /t/n/r");
            var s = new String(str);
            if (whitespace.indexOf(s.charAt(s.length-1)) != -1)
            {
                var i = s.length - 1;
                while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)
                {
                    i--;
                }
                s = s.substring(0, i+1);
            }
            return s;
        }
        function Trim(str)
        {
            return RTrim(LTrim(str));
        }
        </script>
        <%
          ClassService service = new ClassService();
          ProductClass[] classes = service.getAllClass1();
        %>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Insert title here</title>
        </head>
        <body><center>
        <form name="classForm" method="post" action="">
        <select name="select11" id="select11" onchange="doChange(this.value)">
        <option value="">請選擇分類一</option>
        <%
        for(int i=0;i<classes.length;i++) {
          out.println("<option value='"+classes[i].getId()+"'>"+classes[i].getClassName()+"</option>");
        }
        %>
        </select>

        <select name="select12" id="select12" onchange="doChange2(this.value)">
        <option value="">請選擇分類二</option>
        </select>

        <select name="select13" id="select13">
        <option value="">請選擇分類三</option>
        </select>
        </form>
        </center></body>
        </html>

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        AJAX級聯下拉框的簡單實現案例

        AJAX級聯下拉框的簡單實現案例:需要的JAVA類 代碼如下:package com.ajaxlab.ajax; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import org.jdom.Document; import org.jdom.Element;
        推薦度:
        標簽: 實現 案例 實例
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产精品V亚洲精品V日韩精品| 猫咪免费人成网站在线观看| 中文字幕免费在线视频| 国产激情久久久久影院老熟女免费| 久久毛片免费看一区二区三区| 青柠影视在线观看免费高清| 99久热只有精品视频免费看| 1024免费福利永久观看网站| 日韩精品免费电影| 日韩精品成人亚洲专区| 亚洲精品蜜桃久久久久久| 亚洲国产美国国产综合一区二区| 亚洲国产品综合人成综合网站| 亚洲人成色4444在线观看| 免费一区二区三区在线视频| 日本在线免费播放| 亚洲 暴爽 AV人人爽日日碰| 国产成人高清亚洲一区久久| 免费无码又爽又刺激网站| 日本妇人成熟免费中文字幕| 哒哒哒免费视频观看在线www| 亚洲国产精品无码专区在线观看| 亚洲人成综合在线播放| 免费福利在线观看| 精品熟女少妇av免费久久| 国产成人免费A在线视频| 亚洲AV综合色区无码一区爱AV | 亚洲国产精品无码观看久久| 91免费在线视频| 永久免费av无码网站韩国毛片| 亚洲日本中文字幕一区二区三区| 91亚洲精品第一综合不卡播放| 色噜噜狠狠色综合免费视频| 114级毛片免费观看| 亚洲国产小视频精品久久久三级| 亚洲福利视频网址| 无码人妻一区二区三区免费视频| 67194国产精品免费观看| 亚洲高清国产拍精品青青草原| 亚洲精品国产免费| 国产精品高清免费网站|