亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > ASP > 正文

ajax+asp無限級分類樹型結構(帶數據庫)

2024-05-04 11:08:50
字體:
來源:轉載
供稿:網友
帶數據庫的ajax+asp無限級分類樹型結構,好東西別錯過
 
 
 
IE測試通過,FF有點小BUG 
Cls_Leibie.asp 
復制代碼代碼如下:

<% 
'數據庫字段為類屬性,添加、刪除、修改、操作檢查等函數為類的方法 
Class Cls_Leibie 
Private nClassID,sClassName,nParentID,sParentPath,nDepth,nRootID,nChild,nOrderID,sFilePath '定義私有變量(類的屬性,即數據庫字段對應的變量) 
Private rs,sql,ErrorStr 
Private Sub Class_Initialize() 
ErrorStr="" '初始化錯誤信息為空 
End Sub 
Private Sub Class_Terminate() '銷毀類時關閉數據庫連接 
If IsObject(Conn) Then 
Conn.Close 
Set Conn = Nothing 
End If 
End Sub 
'*******************設置各個屬性****************************************************** 
Public Property Let ClassID(str) '獲取類別ID(主鍵) 
nClassID=str 
call ClassProperty() '獲取類別ID時調用此函數讀出類的所有屬性 
End Property 
Public Property Let ClassName(str) '獲取類別名稱 
sClassName=str 
End Property 
Public Property Get ClassName 
ClassName=sClassName 
End Property 
Public Property Let ParentID(str) '獲取類別父ID 
nParentID=str 
End Property 
Public Property Get ParentID 
ParentID=nParentID 
End Property 
Public Property Let ParentPath(str) '獲取父路徑ID 
sParentPath=str 
End Property 
Public Property Get ParentPath 
ParentPath=sParentPath 
End Property 
Public Property Let Depth(str) '獲取類別深度 
nDepth=str 
End Property 
Public Property Get Depth 
Depth=nDepth 
End Property 
Public Property Let RootID(str) '獲取類別根ID 
nRootID=str 
End Property 
Public Property Get RootID 
RootID=nRootID 
End Property 
Public Property Let Child(str) '子類別個數 
nChild=str 
End Property 
Public Property Get Child 
Child=nChild 
End Property 
Public Property Let OrderID(str) '排序ID 
nOrderID=str 
End Property 
Public Property Get OrderID 
OrderID=nOrderID 
End Property 
Public Property Let FilePath(str) '類別文件根目錄(生成靜態文件路徑,小站老楊Web技術博客用的是生成靜態,故設置此字段) 
sFilePath=str 
End Property 
Public Property Get FilePath 
FilePath=sFilePath 
End Property 
'****************************************************************************** 
Private Sub ClassProperty() '讀取類的所有屬性 
sql="select * from ArticleClass where ClassID="& nClassID 
set rs=conn.execute(sql) 
if not rs.eof then 
sClassName=trim(rs("ClassName")) 
nParentID=trim(rs("ParentID")) 
sParentPath=trim(rs("ParentPath")) 
nDepth=trim(rs("Depth")) 
nRootID=trim(rs("RootID")) 
nChild=trim(rs("Child")) 
nOrderID=trim(rs("OrderID")) 
sFilePath=trim(rs("FilePath")) 
end if 
set rs=nothing 
End Sub 
Public Function FAddCheck() '類別添加檢查函數,結果為0表示通過檢查,為1表示有錯誤發生,有錯誤發生時退出函數,將錯誤信息寫入錯誤變量ErrorStr 
dim temprs 
FAddCheck=0 
if sClassName="" then '類名為空 
FAddCheck=1 
ErrorStr="類名不能為空!" 
exit Function 
else 
if nParentID="" then '父id為空 
FAddCheck=1 
ErrorStr="父id不能為空!" 
exit Function 
else 
if nParentID<>0 then 
set temprs=conn.execute("select ClassID From ArticleClass where ClassID=" & nParentID) '父類別不存在 
if temprs.eof then 
FAddCheck=1 
ErrorStr="所屬類別不存在或已經被刪除!" 
exit Function 
else 
sql="select ClassID from ArticleClass where ClassName='"& sClassName &"' and ParentID="& nParentID '類名重復 
set rs=conn.execute(sql) 
if not rs.eof then 
FAddCheck=1 
ErrorStr="類名重復!" 
exit Function 
end if 
set rs=nothing 
end if 
set temprs=nothing 
else 
sql="select ClassID from ArticleClass where ClassName='"& sClassName &"' and ParentID="& nParentID '類名重復 
set rs=conn.execute(sql) 
if not rs.eof then 
FAddCheck=1 
ErrorStr="類名重復!" 
exit Function 
end if 
set rs=nothing 
end if 
end if 
end if 
End Function 
Public Sub SAdd() 
dim maxClassID,maxRootID 
set rs = conn.execute("select Max(ClassID) from ArticleClass") '查找當前數據庫中最大的類別id,如果沒有數據則設置為0,要插入的類別id為當前最大id加1 
maxClassID=rs(0) 
if isnull(maxClassID) then 
maxClassID=0 
end if 
set rs=nothing 
nClassID=maxClassID+1 
set rs=conn.execute("select max(rootid) From ArticleClass") '查找當前數據庫中最大的根id,如果沒有數據則設置為0,要插入的根id為當前最大根id加1 
maxRootID=rs(0) 
if isnull(maxRootID) then 
maxRootID=0 
end if 
nRootID=maxRootID+1 
set rs=conn.execute("select RootID,Depth,ParentPath,Child,OrderID From ArticleClass where ClassID=" & nParentID) '查找父類別相應信息 
if not rs.eof then 
nRootID=trim(rs("Rootid")) '根id與父類別根id相同 
sParentPath=trim(rs("ParentPath"))& "," &nParentID 
if cint(trim(nParentID))>0 then '父id大于0則有父類別,故要插入的類別的深度父類別的深度加1,父id不大于0則當前要插入的類別為根類別,則深度為0 
nDepth=cint(trim(rs("Depth")))+1 
else 
nDepth=0 
end if 
if cint(trim(rs("Child")))>0 then 
dim rsPrevOrderID 
'得到與本欄目同級的最后一個欄目的OrderID 
set rsPrevOrderID=conn.execute("select Max(OrderID) From ArticleClass where ParentID=" & ParentID) 
prevOrderID=rsPrevOrderID(0) 
'得到同一父欄目但比本欄目級數大的子欄目的最大OrderID,如果比前一個值大,則改用這個值。 
set rsPrevOrderID=conn.execute("select Max(OrderID) From ArticleClass where ParentPath like '" & ParentPath & ",%'") 
if (not(rsPrevOrderID.bof and rsPrevOrderID.eof)) then 
if not IsNull(rsPrevOrderID(0)) then 
if rsPrevOrderID(0)>prevOrderID then 
prevOrderID=rsPrevOrderID(0) 
end if 
end if 
end if 
set rsPrevOrderID=nothing 
end if 
nOrderID=prevOrderID+1 
else 
nOrderID=0 
sParentPath="0" 
nDepth=0 
end if 
set rs=nothing 
nChild=0 
sql="insert into ArticleClass (ClassID,ClassName,ParentID,ParentPath,Depth,RootID,Child,OrderID,FilePath) values ("& nClassID &",'"& sClassName &"',"& nParentID &",'"& sParentPath &"',"& nDepth &","& nRootID &","& nChild &","& nOrderID &",'"& sFilePath &"')" 
conn.execute(sql) 
if ParentID>0 then 
'更新其父類的子欄目數 
conn.execute("update ArticleClass set child=child+1 where ClassID="& nParentID) 
'更新該欄目排序以及大于本需要和同在本分類下的欄目排序序號 
if prevOrderID<>"" then 
conn.execute("update ArticleClass set OrderID=OrderID+1 where rootid=" & nRootid & " and OrderID>"& prevOrderID &" and ClassID<>"& nClassID) 
end if 
end if 
End Sub 
Public Function FEditCheck() '類別修改檢查函數,結果為0表示通過檢查,為1表示有錯誤發生,有錯誤發生時退出函數,將錯誤信息寫入錯誤變量ErrorStr 
dim temprs 
FEditCheck=0 
if nClassID="" then '類別id為空 
FEditCheck=1 
ErrorStr="類別id不能為空!" 
exit Function 
else 
if sClassName="" then '類名為空 
FEditCheck=1 
ErrorStr="類名不能為空!" 
exit Function 
else 
if nParentID<>0 then 
set temprs=conn.execute("select ClassID From ArticleClass where ClassID=" & nParentID) '父類別不存在 
if temprs.eof then 
FAddCheck=1 
ErrorStr="所屬類別不存在或已經被刪除!" 
exit Function 
else 
set rs=conn.execute("select ClassID from ArticleClass where ClassName='"& sClassName &"' and ClassID<>"& nClassID &"and ParentID="& nParentID) 
if not rs.eof then '類名重復 
FEditCheck=1 
ErrorStr="類名重復!" 
exit Function 
end if 
set rs=nothing 
end if 
set temprs=nothing 
end if 
end if 
end if 
End Function 
Public Sub SEdit() '類別修改 
sql="update ArticleClass set ClassName='"& sClassName &"',FilePath='"& sFilePath &"' where ClassID="& nClassID 
conn.execute(sql) 
End Sub 
Public Function FDeleteCheck() '類別刪除檢查函數,結果為0表示通過檢查,為1表示有錯誤發生,有錯誤發生時退出函數,將錯誤信息寫入錯誤變量ErrorStr 
FDeleteCheck=0 '這里刪除沒有寫級聯刪除文章部分的代碼,刪除時應該級聯刪除 
if nClassID="" then 
FDeleteCheck=1 
ErrorStr="要刪除的類別id不能為空!" 
exit Function 
else 
set rs=conn.execute("select Child from ArticleClass where ClassID="& nClassID) 
if rs.bof and rs.eof then 
FDeleteCheck=1 
ErrorStr="類別不存在或者已經被刪除!" 
exit Function 
else 
if trim(rs("Child"))>0 then 
FDeleteCheck=1 
ErrorStr="該類別含有子類別,請刪除其子類別后再進行刪除本類別的操作!" 
exit Function 
end if 
end if 
end if 
End Function 
Public Sub SDelete() 
if nDepth>0 then '修改父id孩子數 
conn.execute("update ArticleClass set child=child-1 where child>0 and ClassID=" & nParentID) 
end if 
sql="delete from ArticleClass where ClassID="& nClassID 
conn.execute(sql) 
End Sub 
Public Function FErrStr() 
FErrStr=ErrorStr 
End Function 
End Class 
%> 
index.asp 
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> 
<% 
'作者站點:www.guaishi.org 
'郵箱:guaishiorg@126.com 
'QQ:514777880 
Session.CodePage=65001 
Response.Charset = "utf-8" 
%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title></title> 
<style type="text/css"> 
body{margin:0;padding:0;font-size:12px; background-color:#FFFFFF;} 
ul{ list-style-type:none; margin:0 0 0 20px; padding:0;} 
li{ white-space:nowrap; padding:0;} 
.childdiv{ background:url(images/dot.gif);background-repeat:repeat-y;} 
span { cursor:pointer;} 
</style> 
<script type="text/javascript"> 
var xmlHttp; //定義一個全局變量 
var currentID=1;//設置當前選中ID,如果此ID不存在則會發生js錯誤 
//類別顯示主函數 
//cid--子類別所在層id 
//id --類別id 
//pid--[+]和[-]圖標id 
//fid--類別圖標id 
function DivDisplay(cid,id,pid,fid) 

if (GetId(cid).style.display=='') //子類別不顯示時圖標顯示控制 

GetId(cid).style.display='none'; 
GetId(pid).src = 'images/closed.gif'; 
GetId(fid).src = 'images/folder.gif'; 

else //展開子類別時的操作 

GetId(cid).style.display=''; 
GetId(pid).src = 'images/opened.gif'; 
GetId(fid).src = 'images/folderopen.gif'; 
if (GetId(cid).innerHTML==''||GetId(cid).innerHTML=='正在提交數據...') 

GetId(cid).innerHTML=''; 
ShowChild(cid,id); //調用顯示子類別函數 



//與上一個函數作用相同,只作用在最后一個類別 
function DivDisplay2(cid,id,pid,fid) 

if (GetId(cid).style.display=='') 

GetId(cid).style.display='none'; 
GetId(pid).src = 'images/lastclosed.gif'; 
GetId(fid).src = 'images/folder.gif'; 

else 

GetId(cid).style.display=''; 
GetId(pid).src = 'images/lastopen.gif'; 
GetId(fid).src = 'images/folderopen.gif'; 
if (GetId(cid).innerHTML==''||GetId(cid).innerHTML=='正在提交數據...') 

GetId(cid).innerHTML=''; 
ShowChild(cid,id); 



//類別添加函數 
//id--類別id 
function ClassAdd(id){ 
if (GetId("p"+id).src.indexOf("last")>0){ //最后一個類別時的添加操作 
if (!GetId("p"+id).onclick){ 
GetId("p"+id).onclick=function (){DivDisplay2("c"+id,id,"p"+id,"f"+id);}; //為[+]和[-]添加單擊事件 
GetId("s"+id).ondblclick=function (){DivDisplay2("c"+id,id,"p"+id,"f"+id);}; //為顯示類別文字的span添加雙擊事件 
GetId("p"+id).src = 'images/lastopen.gif'; 


else{ 
if (!GetId("p"+id).onclick){ //不為最后一個類別的添加操作 
GetId("p"+id).onclick=function (){DivDisplay("c"+id,id,"p"+id,"f"+id);}; 
GetId("s"+id).ondblclick=function (){DivDisplay("c"+id,id,"p"+id,"f"+id);}; 
GetId("p"+id).src = 'images/opened.gif'; 


GetId("c"+id).style.display=''; 
ShowChild("c"+id,id); 

//類別修改函數 
function ClassEdit(id,classname){ 
GetId("s"+id).innerHTML=classname; 

//有多個子類別的類別的刪除函數 
function ClassDel(id){ 
ShowChild("c"+id,id); 
CurrentSelect(currentID,id) 
BrowseRight(id); 

//只有一個子類別的類別的刪除函數 
function ClassDel1(id){ 
if (GetId("p"+id).src.indexOf("last")>0){ //當類別是當前類別的最后一個類別時 
GetId("p"+id).style.cursor="cursor"; //設置圖標的鼠標經過樣式 
GetId("p"+id).onclick=function (){}; //因為只有一個子類別刪除后就不再有子類別,故將圖標單擊事件修改為空函數 
GetId("s"+id).ondblclick=function (){}; //同上 
GetId("p"+id).src = 'images/lastnochild.gif'; //圖標設置 

else{ 
GetId("p"+id).style.cursor="cursor"; //非最后一個類別的刪除操作 
GetId("p"+id).onclick=function (){}; 
GetId("s"+id).ondblclick=function (){}; 
GetId("p"+id).src = 'images/nofollow2.gif'; //這里的圖標設置與前面不一樣 

ShowChild("c"+id,id); 
CurrentSelect(currentID,id); 
BrowseRight(id); 

//向右邊框架傳遞參數 
function BrowseRight(id){ 
CurrentSelect(currentID,id); 
top.ContentFrame.location="../ArticleMain.asp?ClassID="+ id; 

//設置類別選中狀態的函數 
function CurrentSelect(oldid,newid){ 
currentID=newid; 
document.getElementById("s"+oldid).style.backgroundColor="white"; 
document.getElementById("s"+currentID).style.backgroundColor="#C0C0E9"; 

//創建XMLHttpRequest對象 
function CreateXMLHttpRequest() 

if (window.ActiveXObject) 

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); 

else 

xmlHttp = new XMLHttpRequest(); 


//Ajax處理函數 
//id,層id 
//rid,數據在表中的id 
function ShowChild(cid,id) 

CreateXMLHttpRequest(); 
if(xmlHttp) 

xmlHttp.open('POST','child.asp',true); 
xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); 
var SendData = 'id='+id; 
xmlHttp.send(SendData); 
xmlHttp.onreadystatechange=function() 

if(xmlHttp.readyState==4) 

if(xmlHttp.status==200) 

GetId(cid).innerHTML = xmlHttp.responseText; 

else 

GetId(cid).innerHTML='出錯:'+xmlHttp.statusText; 


else 

GetId(cid).innerHTML="正在提交數據..."; 



else 

GetId(cid).innerHTML='抱歉,您的瀏覽器不支持XMLHttpRequest,請使用IE6以上版本!'; 


//取得頁面對象 
//id,層id 
function GetId(id) 

return document.getElementById(id); 

</script> 
</head> 
<body> 
<!--#include file="../conn.asp"--> 
<% 
'顯示根目錄 
sql="select *,(select top 1 ClassID from ArticleClass where Depth=0 order by ClassID desc) as lastid from ArticleClass where Depth=0 order by ClassID" 
set rs=conn.execute(sql) 
if not rs.eof then 
response.Write "<ul>"&vbcr 
do while not rs.eof 
if cint(trim(rs("ClassID")))=cint(trim(rs("lastid"))) then 
if rs("Child")>0 then 
response.Write "<li><img id='p"&rs("ClassID")&"' src=""images/lastclosed.gif"" onclick=""DivDisplay2('c"&rs("ClassID")&"','"&rs("ClassID")&"','p"&rs("ClassID")&"','f"& rs("ClassID") &"')"" style=""cursor : hand;"" align=""absmiddle"">" 
response.Write "<img src=""images/folder.gif"" align=""absmiddle"" id='f"& rs("ClassID") &"' /> <span id='s"& trim(rs("ClassID")) &"' onclick=""BrowseRight("& trim(rs("ClassID")) &")"" ondblclick=""DivDisplay2('c"&rs("ClassID")&"','"&rs("ClassID")&"','p"&rs("ClassID")&"','f"& rs("ClassID") &"')"">"& rs("ClassName") &"</span>" 
else 
response.Write "<li><img id='p"& rs("ClassID") &"' src=""images/lastnochild.gif"" align=""absmiddle"" />" 
response.Write "<img src=""images/folder.gif"" align=""absmiddle"" id='f"& rs("ClassID") &"' /> <span id='s"& trim(rs("ClassID")) &"' onclick=""BrowseRight("& trim(rs("ClassID")) &")"">"& rs("ClassName") &"</span>" 
end if 
else 
if rs("Child")>0 then 
response.Write "<li><img id='p"&rs("ClassID")&"' src=""images/closed.gif"" onclick=""DivDisplay('c"&rs("ClassID")&"','"&rs("ClassID")&"','p"&rs("ClassID")&"','f"& rs("ClassID") &"')"" style=""cursor : hand;"" align=""absmiddle"">" 
response.Write "<img src=""images/folder.gif"" align=""absmiddle"" id='f"& rs("ClassID") &"' /> <span id='s"& trim(rs("ClassID")) &"' onclick=""BrowseRight("& trim(rs("ClassID")) &")"" ondblclick=""DivDisplay('c"&rs("ClassID")&"','"&rs("ClassID")&"','p"&rs("ClassID")&"','f"& rs("ClassID") &"')"">"& rs("ClassName") &"</span>" 
else 
response.Write "<li><img id='p"& rs("ClassID") &"' src=""images/nofollow2.gif"" align=""absmiddle"" />" 
response.Write "<img src=""images/folder.gif"" align=""absmiddle"" id='f"& rs("ClassID") &"' /> <span id='s"& trim(rs("ClassID")) &"' onclick=""BrowseRight("& trim(rs("ClassID")) &")"">"& rs("ClassName") &"</span>" 
end if 
end if 
if cint(trim(rs("ClassID")))=cint(trim(rs("lastid"))) then 
response.Write "<div id='c"&rs("ClassID")&"' style='display:none;'></div>" 
else 
response.Write "<div id='c"&rs("ClassID")&"' style='display:none;' class=""childdiv""></div>" 
end if 
response.Write "</li>"&vbcr 
rs.movenext 
loop 
response.Write "</ul>"&vbcr 
end if 
rs.close 
set rs=nothing 
conn.close 
Set conn = Nothing 
%> 
</body> 
</html> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕日韩欧美在线视频| 久久久久久国产精品| 日本一区二区在线播放| 91精品视频专区| 久久久久久97| 精品香蕉一区二区三区| 亚洲一区二区中文| 国产成人久久精品| 国产精品白嫩美女在线观看| 亚洲一区二区在线| 91免费观看网站| 热门国产精品亚洲第一区在线| 久久天天躁狠狠躁夜夜av| 国产成人+综合亚洲+天堂| 一区二区三区高清国产| 国产小视频国产精品| 亚洲二区在线播放视频| 久久精品久久久久久国产 免费| 国产成人在线一区| 91精品久久久久久久久久| 国产成人精品久久| 亚洲精品福利在线| 欧美性猛交xxxxx水多| 日韩高清a**址| 亚洲娇小xxxx欧美娇小| 久久久久久欧美| 久久久欧美一区二区| 国产一区二区黑人欧美xxxx| 亚洲成人激情在线观看| 热re99久久精品国产66热| 久久久久九九九九| www.美女亚洲精品| 欧美国产第二页| 欧美日韩不卡合集视频| 国产99久久精品一区二区永久免费| 久久久久免费视频| 欧美在线视频a| 欧美在线视频网站| 亚洲国产99精品国自产| 亚洲福利视频网| 亚洲午夜性刺激影院| 国内精品美女av在线播放| 欧美在线性爱视频| 波霸ol色综合久久| 亚洲国产成人在线播放| 在线电影中文日韩| 亚洲精品欧美一区二区三区| 91久久精品国产91性色| 91久久久久久久久| 韩日精品中文字幕| 91成人在线视频| 欧美激情高清视频| 亚洲美女在线视频| 55夜色66夜色国产精品视频| 亚洲第一精品福利| 红桃视频成人在线观看| 国产一区玩具在线观看| 欧美精品久久久久久久| 亚洲精品久久久久久久久久久久| 欧美日韩视频在线| 尤物99国产成人精品视频| 66m—66摸成人免费视频| 国产精品免费福利| 黄色精品在线看| 国产精品福利观看| 国产精品永久免费在线| 精品呦交小u女在线| 91精品视频大全| 亚洲一区二区三区777| 亚洲国产第一页| 美女扒开尿口让男人操亚洲视频网站| 国产z一区二区三区| 2020欧美日韩在线视频| 久久精品国产91精品亚洲| 国产精品久久久久久久久久久不卡| 91高潮在线观看| 亚洲精品视频中文字幕| 亚洲欧洲激情在线| 青青久久aⅴ北条麻妃| 日韩免费在线看| 亚洲国产精品高清久久久| 九九精品在线播放| 国产a∨精品一区二区三区不卡| 国产精品久久久久免费a∨大胸| www国产精品com| 91中文在线观看| 国产精品九九九| 欧美国产中文字幕| 一区二区三区视频观看| 国产精品视频专区| 色偷偷偷综合中文字幕;dd| 亚洲欧洲午夜一线一品| 黄色一区二区在线| 久久青草福利网站| 久久777国产线看观看精品| 久久久久久久亚洲精品| 国产精品av免费在线观看| 日韩精品极品视频| 日本不卡高字幕在线2019| 久久久久久国产精品久久| 中文字幕9999| 国产精品自拍小视频| 亚洲免费成人av电影| 中文字幕少妇一区二区三区| 亚洲一区中文字幕| 色偷偷av亚洲男人的天堂| 亚洲国语精品自产拍在线观看| 欧美电影在线免费观看网站| 精品高清美女精品国产区| 久久精品亚洲一区| 国产亚洲人成网站在线观看| 亚洲国产成人精品久久久国产成人一区| 国产成人精品免高潮费视频| 国产成人97精品免费看片| 亚洲一区二区久久久久久| 91影视免费在线观看| 亚洲乱亚洲乱妇无码| 日韩中文字幕在线视频| 国产做受69高潮| 日韩欧亚中文在线| 亚洲人成电影在线观看天堂色| 亚洲国产又黄又爽女人高潮的| 中文字幕最新精品| 欧美大胆a视频| 久久精品国产96久久久香蕉| 在线观看欧美日韩| 亚洲成人网在线| 亚洲最大激情中文字幕| 亚洲片在线资源| 国产成人aa精品一区在线播放| 亚洲天堂av综合网| 国产精品视频不卡| 日韩中文字幕视频在线| 中文字幕亚洲色图| 国产精选久久久久久| 亚洲第一福利网| 国产精品扒开腿做| 亚洲国产欧美一区二区丝袜黑人| 亚洲激情视频网| 午夜精品久久久久久99热| 97视频免费看| 亚洲欧美国产一区二区三区| 88xx成人精品| 国产一区二区三区在线免费观看| 日本伊人精品一区二区三区介绍| 久久精品青青大伊人av| 精品福利樱桃av导航| 色婷婷**av毛片一区| 97免费视频在线播放| 成人亚洲综合色就1024| 日本成人黄色片| 欧美插天视频在线播放| 2018中文字幕一区二区三区| 92福利视频午夜1000合集在线观看| 精品视频在线导航| 国产69精品久久久久99| 国产suv精品一区二区三区88区| 91精品国产电影| 欧美日韩免费区域视频在线观看| 国产视频亚洲精品| 欧美午夜女人视频在线| 中文字幕久精品免费视频| 亚洲欧美成人在线| 欧美精品做受xxx性少妇|