<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單

    最近做的項(xiàng)目中涉及到5,6級(jí)的級(jí)聯(lián)菜單,用以前那種純JavaScript做起來(lái)實(shí)在是太低效了,頁(yè)面響應(yīng)慢得跟286一樣。。。于是上網(wǎng)找AJAX實(shí)現(xiàn)的級(jí)聯(lián)菜單,找來(lái)找去找不到用DB+JSP+AJAX實(shí)現(xiàn)的。索性把人家的代碼拿來(lái)改了改,自己做了一個(gè)。
    我之所以采用這個(gè)代碼作為修改的藍(lán)本,是因?yàn)檫@個(gè)代碼的服務(wù)端處理程序返回的是標(biāo)準(zhǔn)的XML序列,客戶端的JavaScript通過(guò)
    var res = XMLHttpReq.responseXML.getElementsByTagName(String)
    的方式來(lái)解析這個(gè)XML序列,再通過(guò)類似于
    res[i].firstChild.data
    的方式遍歷這個(gè)XML序列,從而找到所要的數(shù)據(jù)。這樣可以實(shí)現(xiàn)比較大的數(shù)據(jù)的AJAX操作,比那些只返回簡(jiǎn)單String的例子要好得多了!反正我最討厭手動(dòng)解析字符串了!
    menu.jsp(文件的編碼也是UTF-8,我用EmEditor寫(xiě)的,右下角那里可以更改文檔的編碼格式)

    <%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>
    <%
        request.setCharacterEncoding(
    "UTF-8");
        response.setContentType(
    "text/html;charset=UTF-8");
    %>
    <html>
    <head>
    <META http-equiv=Content-Type content="text/html; charset=UTF-8">
    <!--LINK href="images/css.css" type=text/css rel=stylesheet-->
    </head>
    <%
        
    String driver = "org.apache.derby.jdbc.EmbeddedDriver";
        
    String dbName="/derby/demo/databases/toursdb";
        
    String connectionURL = "jdbc:derby:" + dbName; 
        Connection conn 
    = null;
        Statement st 
    = null;
        ResultSet rs 
    = null;
        List cities 
    = new ArrayList();

        try{
            Class.forName(driver); 
        } catch(java.lang.ClassNotFoundException e) {
            e.printStackTrace();
        }

        try {
            conn 
    = DriverManager.getConnection(connectionURL); 
            st
    =conn.createStatement();
            rs
    =st.executeQuery("SELECT distinct COUNTRY FROM cities order by COUNTRY");
            
    while (rs.next())
            {
                cities.add(rs.getString(
    1));
            }
            rs.close();
            st.close();
            conn.close();
        }  catch (Exception e)  {   
            e.printStackTrace();
        }
    %>
    <body>
    <script language="javascript">
    var XMLHttpReq;
        
    var currentSort;
         
    //創(chuàng)建XMLHttpRequest對(duì)象       
        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) {}
                }
            }
        }
        
    //發(fā)送請(qǐng)求函數(shù)
        function sendRequest(url) {
            createXMLHttpRequest();
            XMLHttpReq.open(
    "GET", url, true);
            XMLHttpReq.onreadystatechange 
    = processResponse;//指定響應(yīng)函數(shù)
            XMLHttpReq.send(null);  // 發(fā)送請(qǐng)求
        }
        
    // 處理返回信息函數(shù)
        function processResponse() {
            
    if (XMLHttpReq.readyState == 4) { // 判斷對(duì)象狀態(tài)
                if (XMLHttpReq.status == 200) { // 信息已經(jīng)成功返回,開(kāi)始處理信息
                    updateMenu();
                } 
    else { //頁(yè)面不正常
                      alert("您所請(qǐng)求的頁(yè)面有異常。");
                }
            }
        }
        
    //更新菜單函數(shù)
        function updateMenu() {
            
    var res=XMLHttpReq.responseXML.getElementsByTagName("res")
            
    /**下面是用innerHTML輸出控件內(nèi)容的一般用法**/
            
    //var subMenu = "";
            //for(var i = 0; i < res.length; i++) {
            //    subMenu = subMenu + "  " + res[i].firstChild.data + "";
            //}
            //currentSort.innerHTML = subMenu;
            
            
    var list = document.all.list;
            list.options.length
    =0;
            list.add(
    new Option("---請(qǐng)選擇---",""));
            
    for(var i=0;i<res.length;i++){
                list.add(
    new Option(res[i].firstChild.data,res[i].firstChild.data));
            }
        }
        
    // 創(chuàng)建級(jí)聯(lián)菜單函數(shù)
        function showSubMenu(obj) {
            
    //currentSort =document.getElementById(obj); 
            //currentSort.parentNode.style.display = "";
            sendRequest("menujsp.jsp?sort=" + obj);
            
    /**下面這一句的作用是:每次選擇后回到第一個(gè)選項(xiàng)**/
            
    //document.all.mli.options[0].selected=true;
        }

    </script>
    <select onchange="showSubMenu(this.options[this.options.selectedIndex].value)" name="mli"  style="width:150px">
    <option value=''>---請(qǐng)選擇---</option>
    <%
        
    for(int i=0;i<cities.size();i++)
        {
            out.println(
    "<option value='"+cities.get(i)+"'>"+cities.get(i)+"</option>");
        }
    %>
    </select>
    <select name="list" onchange="if(this.selectedIndex)alert(this.options[this.options.selectedIndex].value)" style="width:100px">
    <option name="">---請(qǐng)選擇---</option>
    </select>
    </body>
    </html>
    menujsp.jsp(文檔編碼格式也是UTF-8)
    <%@ page contentType="text/html; charset=UTF-8" import="java.util.*,java.sql.*" %>
    <%
        
    String sort=request.getParameter("sort");
        
    String driver = "org.apache.derby.jdbc.EmbeddedDriver";
        
    String dbName="/derby/demo/databases/toursdb";
        
    String connectionURL = "jdbc:derby:" + dbName; 
        Connection conn 
    = null;
        Statement st 
    = null;
        ResultSet rs 
    = null;
        List cities 
    = new ArrayList();

        
    try{
            
    Class.forName(driver); 
        } 
    catch(java.lang.ClassNotFoundException e) {
            e.printStackTrace();
        }

        
    try {
            conn 
    = DriverManager.getConnection(connectionURL); 
            st
    =conn.createStatement();
            rs
    =st.executeQuery("SELECT CITY_NAME FROM cities where COUNTRY='"+sort+"'");
            
    while (rs.next())
            {
                cities.add(rs.getString(
    1));
            }
            rs.close();
            st.close();
            conn.close();
        }  
    catch (Exception e)  {   
            e.printStackTrace();
        }
        response.setContentType(
    "text/xml; charset=UTF-8");
        response.setHeader(
    "Cache-Control""no-cache");
        out.println(
    "<response>");
        
    for(int i=0;i<cities.size();i++)
        {
            out.println(
    "<res>" + cities.get(i).toString() + "</res>");
        }
        out.println(
    "</response>");
        out.close();
    %
    >

    數(shù)據(jù)庫(kù)版本是:db-derby-10.3.1.4,可以去www.apache.org下載。
    把db-derby-10.3.1.4-bin.zip解壓到c:\derby下,用的示例數(shù)據(jù)庫(kù)是c:/derby/demo/databases/toursdb,注意路徑。
    然后把derby下的derby.jar解壓到用于啟動(dòng)Tomcat的那個(gè)JRE的ext目錄下,重啟TOMCAT,打開(kāi)瀏覽器,訪問(wèn)menu.jsp即可看到效果。
    AJAX菜單效果圖
     
    三級(jí)聯(lián)動(dòng)的效果:

    下載本例的JSP代碼:ajax_db_jsp_demo.rar
    三級(jí)聯(lián)動(dòng)下拉菜單:three_ajax_select_with_db.zip

    posted on 2007-08-21 23:00 靈魂守護(hù)者 閱讀(12560) 評(píng)論(48)  編輯  收藏 所屬分類: AJAX

    評(píng)論

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2007-11-25 16:57 haohao

    不錯(cuò),頂~  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2007-11-30 10:41 shaomin

    謝謝分享
    收下了
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2007-12-29 15:57 JITATA

    謝謝,好東西,收藏中。。。  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-01-22 14:50 游客

    照改了一下 很好!~~非常感謝 正在擴(kuò)展中  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-03-15 16:17 jiangfeng

    太感謝了啊!  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2008-03-26 09:48 sunshine

    很好的東東!!!收藏ing  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-07-16 15:55 游客

    厲害啊  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-07-25 17:05 游客

    老板能說(shuō)一下數(shù)據(jù)庫(kù)的結(jié)構(gòu)嗎?  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-07-28 17:00 chaoskz

    正是我所需要的,頂,謝謝樓主分享!  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-08-03 00:41 斯蒂芬

    謝謝 LZ   回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-08-06 15:45 大帥

    res 獲取到的 length 是0
    但是獲取到的 response的length 卻是 1

    大哥幫忙呀。我這邊就是獲取不到 res
    我的email liufangmeng@163.com
    qq 76634102  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-08-08 09:11 hooo

    .getElementsByTagName("res")這句干么的呢,沒(méi)看到有res這個(gè)name啊,

    不懂賜教:tyc_boy@126.com  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-09-16 15:49 jokylin

    res 獲取到的 length 是0 ,怎么回事?有能運(yùn)行的嗎?  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2008-09-23 22:19 啊啊

    謝謝分享  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-10-10 09:23 小妮

    非常謝謝!這個(gè)項(xiàng)目正需要這個(gè)  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2008-10-23 14:50 java初學(xué)者

    謝謝了  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-10-30 16:27 冰冰

    賜教!  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2008-11-03 14:03 xzy

    太感謝了  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-11-11 14:37 彩筆

    太 感謝 了 我 喲個(gè)問(wèn)題想問(wèn)下你 就是如果 我第二的下拉列表 也是鍵值對(duì),怎么改寫(xiě) 你的第二的列表是顯示內(nèi)容和value一樣的 。  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2008-12-17 16:53 Tony

    為什么我全部照搬,結(jié)果卻是在改變contury后得到了出錯(cuò)信息:“您所請(qǐng)求的頁(yè)面有異常...”

    HELP~~~  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2008-12-23 00:45 spirit_fly

    樓主,你很強(qiáng)大啊,感謝!  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2009-01-05 15:14 boy

    試過(guò) 很好~大概知道以后要怎樣弄下拉菜單了~多謝分享  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2009-03-01 15:45 1

    三級(jí)連動(dòng)怎么會(huì)出現(xiàn)錯(cuò)誤啊   回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2009-04-28 11:38 fabius

    list.add(new Option("---請(qǐng)選擇---",""));
    list.add(new Option(res[i].firstChild.data,res[i].firstChild.data));
    這兩條語(yǔ)句在firefox下運(yùn)行會(huì)有問(wèn)題,而在IE中運(yùn)行則不會(huì)有問(wèn)題。
    改成list.add(new Option("---請(qǐng)選擇---",""),null);之后運(yùn)行正常
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2009-06-16 17:14 Evan

    謝謝!非常感謝!  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2009-09-05 09:16 chengninger

    非常感謝  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2009-09-24 13:02 親切

    中文菜單如何實(shí)現(xiàn)?  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-01-18 17:59 bingyu

    我的也出現(xiàn)了這樣的情況,是什么原因呀
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-01-18 18:00 wxx

    為什么我的照搬,結(jié)果卻是在改變contury后得到了出錯(cuò)信息:“您所請(qǐng)求的頁(yè)面有異常...”
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-01-19 16:23 小夏

    我 這里獲取不到res   回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-01-19 16:24 小雨

    我這里獲取不到res希望得到幫助
    xiashujv@163.com  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2010-04-02 11:23 呵呵

    有問(wèn)題哦  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2010-04-02 11:34 呵呵

    有這樣一個(gè)問(wèn)題 怎解決哦

    無(wú)法顯示 XML 頁(yè)。
    使用 樣式表無(wú)法查看 XML 輸入。請(qǐng)更正錯(cuò)誤然后單擊 刷新按鈕,或以后重試。
    --------------------------------------------------------------------------------
    文檔的頂層無(wú)效。處理資源 'http://localhost:8080/guest_book/menujsp.jsp' 時(shí)出錯(cuò)。


      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2010-04-02 11:36 游客

    有這樣一個(gè)問(wèn)題怎么解決 能把解決后大的發(fā)到我的郵箱就好了jiangxian.ck98@163.com
    無(wú)法顯示 XML 頁(yè)。
    使用 樣式表無(wú)法查看 XML 輸入。請(qǐng)更正錯(cuò)誤然后單擊 刷新按鈕,或以后重試。


    --------------------------------------------------------------------------------

    文檔的頂層無(wú)效。處理資源 'http://localhost:8080/guest_book/menujsp.jsp' 時(shí)出錯(cuò)。


      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-04-06 11:49 游客

    我照搬你的 就是用MYSQL數(shù)據(jù)庫(kù) 其他的與數(shù)據(jù)庫(kù)有關(guān)的地方都改了 運(yùn)行時(shí)沒(méi)錯(cuò),但是就是出不來(lái)二級(jí)菜單那里,樓主幫解決下。  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2010-04-16 19:02 jiajia

    謝謝,剛好用到,真好用,謝謝  回復(fù)  更多評(píng)論   

    # 使用JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單異常,請(qǐng)求幫助 2010-08-19 17:54 liusufang

    為什么我的照搬,結(jié)果卻是在改變contury后得到了出錯(cuò)信息:“您所請(qǐng)求的頁(yè)面有異常...” ?有知道原因的請(qǐng)發(fā)到我郵箱:white_fangzi@126.com,謝謝!
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2010-09-03 22:16 461228344@qq.com

    @fabius
    照改了還是不行呀,還有老是亂碼,轉(zhuǎn)換了編碼也不行IE里沒(méi)問(wèn)題
    461228344@qq.com  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2011-07-13 11:14 123

    能說(shuō)一下數(shù)據(jù)庫(kù)的結(jié)構(gòu),急,急...  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-19 12:27 xinyuan.zhuang

    非常好!res是menujsp.jsp頁(yè)面的
      回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-19 12:29 xinyuan.zhuang

    var list = document.all.list;

    list:是<select name="list"   回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-23 15:59 作者

    經(jīng)測(cè)試,該示例在Chrome 15 Dev,IE8,Maxthon3下工作正常。  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-23 16:05 作者

    提示數(shù)據(jù)庫(kù)路徑錯(cuò)誤的朋友,不妨改一改兩個(gè)jsp頭部的這兩行吧。

        String dbName="/derby/demo/databases/toursdb";
        String connectionURL = "jdbc:derby:" + dbName; 
    改成
    String dbName="/demo/databases/toursdb";
    String connectionURL = "jdbc:derby:C:/SandBox/db-derby-10.8.1.2-bin" + dbName;   回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-23 16:07 作者

    示例用到的數(shù)據(jù)庫(kù)是Derby的Demo數(shù)據(jù)庫(kù)之一,下載Derby之后就有了,下載地址是http://db.apache.org/derby/releases/release-10.8.1.2.cgi  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2011-08-23 16:08 ducktsmt

    這個(gè)示例還是有很多需要完善的地方,謝謝大家的批評(píng)指正  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2012-01-04 09:14 William

    非常感謝分享這么好的東東  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單 2012-02-17 16:34 Gamehu

    bu錯(cuò)  回復(fù)  更多評(píng)論   

    # re: JavaDB+JSP+AJAX實(shí)現(xiàn)的級(jí)聯(lián)下拉菜單[未登錄](méi) 2012-03-28 17:53 s

    為什么照抄會(huì)出現(xiàn)空指針問(wèn)題呢?  回復(fù)  更多評(píng)論   


    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2012年2月>
    2930311234
    567891011
    12131415161718
    19202122232425
    26272829123
    45678910

    導(dǎo)航

    統(tǒng)計(jì)

    留言簿(1)

    文章分類(2)

    文章檔案(4)

    收藏夾(9)

    搜索

    最新評(píng)論

    主站蜘蛛池模板: 亚洲狠狠久久综合一区77777| 中文字幕亚洲激情| 亚洲AV中文无码乱人伦| 久久精品国产亚洲5555| 亚洲国产另类久久久精品 | 97视频热人人精品免费| 国产免费观看青青草原网站| 亚洲性在线看高清h片| 亚洲av日韩av高潮潮喷无码| 久久精品国产亚洲AV忘忧草18| 亚洲精品人成网线在线播放va| 男人免费视频一区二区在线观看| 一级特黄录像免费播放肥| 99视频精品全部免费观看| 久久精品a一国产成人免费网站| 四虎永久在线免费观看| 亚洲综合精品香蕉久久网| 中文字幕亚洲精品| 久久精品国产亚洲AV天海翼| 丝瓜app免费下载网址进入ios| 亚洲视频免费播放| 又粗又大又猛又爽免费视频| 亚洲av无码成人黄网站在线观看 | 美女扒开屁股让男人桶爽免费 | 九九久久精品国产免费看小说 | 999在线视频精品免费播放观看| 免费在线观看视频a| 婷婷亚洲综合五月天小说| 亚洲一区二区三区国产精华液| 国产免费A∨在线播放| 青青青免费国产在线视频小草| 亚洲高清成人一区二区三区| 91亚洲导航深夜福利| 一级黄色免费网站| 皇色在线视频免费网站| 亚洲无码视频在线| 久久狠狠爱亚洲综合影院| 中文字幕一区二区三区免费视频| 无人在线观看免费高清视频| 亚洲午夜国产精品无码老牛影视 | 青青青亚洲精品国产|