中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

asp.net中Repeater控件用法筆記
來源:易賢網(wǎng) 閱讀:1173 次 日期:2014-10-16 10:47:41
溫馨提示:易賢網(wǎng)小編為您整理了“asp.net中Repeater控件用法筆記”,方便廣大網(wǎng)友查閱!

大家可能都對datagrid比較熟悉,但是如果在數(shù)據(jù)量大的時候,我們就得考慮使用repeater作為我們的數(shù)據(jù)綁定控件了。Repeater控件與DataGrid (以及DataList)控件的主要區(qū)別是在于如何處理HTML。ASP.NET建立HTML代碼以顯示DataGrid控件,但Repeater允許開發(fā)人員決定如何顯示數(shù)據(jù)。所以,你可以選擇將數(shù)據(jù)顯示在一個HTML表格中或者一個順序列表中。這主要取決于你的選擇,但你必須將正確的HTML插入到 ASP.NET頁面中。

模板與DataList一樣,Repeater控件只支持模板。以下的模板可供選擇:

AlternatingItemTemplate: 指定如何顯示每一其它選項。

ItemTemplate: 指定如何顯示選項。(AlternatingItemTemplate可以覆蓋這一模板。)

HeaderTemplate: 建立如何顯示標題。

FooterTemplate: 建立如何顯示頁腳。

SeparatorTemplate: 指定如何顯示不同選項之間的分隔符。

你可以使用這些模板來顯示你希望的數(shù)據(jù)。唯一具有強制性的模板是ItemTemplate,所有其它的模板都是具有選擇性的。

對于處理一個數(shù)據(jù)源,Repeater控件具有與DataGrid與DataList相同的屬性:

DataMember:獲得或者設(shè)置與 Repeater 控件綁定的相應(yīng)DataSource屬性的表格。

DataSource:獲得或者設(shè)置為 Repeater 顯示提供數(shù)據(jù)的數(shù)據(jù)源。

除此之外,還有一個Items屬性,你可以通過這一屬性編程訪問Repeater數(shù)據(jù)中單一選項。它返回一個RepeaterItemCollection對象,為一組RepeaterItem對象的集合,代表 Repeater 數(shù)據(jù)的每一行。

ASP.NET Web數(shù)據(jù)控件還有其它一個共性:它們都使用DataBind方法來生成用戶界面。調(diào)用這一方法可以返回并顯示數(shù)據(jù)(假設(shè)DataSource和 DataMember屬性設(shè)置正確)。在查看DataBind方法之前,我們先看看如何在一個Web頁面中使用一個Repeater控件。

使用Repeater控件

使用Repeater控件的第一步驟是決定我們將要使用的數(shù)據(jù)源和字段。例如,我們將要使用SQL Server Northwind數(shù)據(jù)庫中的Employees列表。Web頁面將顯示職工的完整名字,地址,以及電話號碼。HTML將使用DIV標記,用 Repeater 模板來分隔內(nèi)容。下面是 Web 頁面的 HTML 內(nèi)容:

前臺代碼

代碼如下:

<asp:Repeater ID="Repeater1" runat="server">

<HeaderTemplate><table cellpadding="0" cellspacing="0" border="1" align="center" class="auto-style1">

<tr align="left">

<th>編號</th>

<th>姓名</th>

<th>年齡</th>

<th>班級</th>

<th>零花</th>

</tr>

</HeaderTemplate>

<ItemTemplate>

<tr >

<td><%#Eval("id")%></td>

<td><%#Eval("name")%></td>

<td><%#Eval("age")%></td>

<td><%#Eval("classid")%></td>

<td><%#Eval("salary")%></td>

</tr>

</ItemTemplate>

<FooterTemplate></table></FooterTemplate>

</asp:Repeater>

后臺代碼

代碼如下:

string sql = string.Format("select * from person");

DataTable dt = sqlhelper.helper.ExecuteQuery(sql);

Repeater1.DataSource = dt;

Repeater1.DataBind();

AspNetpager的使用方法:

首先注冊<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>

前臺:

代碼如下:

<webdiyer:AspNetPager ID="AspNetPager1" runat="server" CustomInfoHTML="第%CurrentPageIndex%頁,共%PageCount%頁,每頁%PageSize%條"

FirstPageText="首頁" LastPageText="尾頁" LayoutType="Table" NextPageText="下一頁"

onpagechanging="AspNetPager1_PageChanging" PageIndexBoxType="DropDownList"

PagingButtonLayoutType="Span" PrevPageText="上一頁" ShowCustomInfoSection="Left"

ShowPageIndexBox="Always" SubmitButtonText="Go" TextAfterPageIndexBox="頁"

TextBeforePageIndexBox="轉(zhuǎn)到" Width="450px" PageSize="3">

</webdiyer:AspNetPager>

后臺:

代碼如下:

private void AddPages(Repeater rpt,Wuqi.Webdiyer.AspNetPager anp,DataTable dt)

{

PagedDataSource pds = new PagedDataSource();

pds.AllowPaging = true;

pds.DataSource = dt.DefaultView;

anp.RecordCount = dt.Rows.Count;//給分頁控件指定當(dāng)前總數(shù)

pds.PageSize = anp.PageSize;//確定分頁,每頁有n項

pds.CurrentPageIndex = anp.CurrentPageIndex - 1;//確定當(dāng)前頁數(shù)

rpt.DataSource = pds;//綁定數(shù)據(jù)源

rpt.DataBind();

}

protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)

{

AspNetPager1.CurrentPageIndex = e.NewPageIndex;

BindPersonData();

}

例子

repeater控件動態(tài)添加、刪除一行

代碼如下:

<script type="text/javascript">

var txtEquipmentIdsIDArray = new Array();

function OpenWindow(clientId, TypeId, ReqNum) {

var url = "../EquipmentIssue/EquipmentRequestIssue.aspx?TypeId=" + TypeId + "&ReqNum=" + ReqNum;

var widths = 600;

var heigths = 450;

var winPar = window.showModalDialog(url, window, 'dialogWidth=' + widths + 'px;dialogHeight=' + heigths + 'px;status=no;center=yes;scroll=no;help:No;');

if (winPar != undefined) {

var txtEquipmentIds = document.getElementById(clientId);

txtEquipmentIds.value = winPar;

// //審批用戶控件中保存發(fā)放的EquipmentId

// var IsExistEquipmentIdsID = false;

// for (var i = 0; i < txtEquipmentIdsIDArray.length; i++) {

// if (txtEquipmentIdsIDArray[i] == clientId) {

// IsExistEquipmentIdsID = true;

// }

// }

// if (IsExistEquipmentIdsID == false) {

// txtEquipmentIdsIDArray.push(clientId);

// }

// var tempEquipmentId = "";

// for (var i = 0; i < txtEquipmentIdsIDArray.length; i++) {

// tempEquipmentId = tempEquipmentId + document.getElementById(txtEquipmentIdsIDArray[i]).value;

// var hiddenEquipmentIds = document.getElementById("UC_ApprovalAction1_hfEquipmentIds");

// hiddenEquipmentIds.value = tempEquipmentId;

// }

// //alert(hiddenEquipmentIds.value);

}

var tempReturnValue = "";

var tb_Request = document.getElementById("tb_Request");

var tr = tb_Request.getElementsByTagName("tr");

for (var i = 0; i < tr.length; i++) {

if (tr[i].id != "") {

var span_EquRequestItemId = tr[i].getElementsByTagName("span"); //獲取申請明細的IDEquRequestItemId

var select_ddlStation; //獲取使用工位StationId

var option = tr[i].getElementsByTagName("select")[1].getElementsByTagName("option");

for (var j = 0; j < option.length; j++) {

if (option[j].selected)

{

select_ddlStation = option[j]

}

}

var textarea_EquipmentIds = tr[i].getElementsByTagName("textarea"); //獲取發(fā)放的資產(chǎn)號EquipmentNo

tempReturnValue = tempReturnValue + span_EquRequestItemId[0].innerText + ":" + select_ddlStation.value + ":" + textarea_EquipmentIds[0].innerText + "|";

}

}

var hiddenEquipmentIds = document.getElementById("UC_ApprovalAction1_hfEquipmentIds");

hiddenEquipmentIds.value = tempReturnValue;

//alert(hiddenEquipmentIds.value);

}

</script>

Repeater:

代碼如下:

<div id="div_Repeater">

<asp:HiddenField ID="hfRptColumns" runat="server" Value="Guid,EquRequestItemId,EquipmentType,Station,EquipmentNum,EquipmentIds" />

<table id="tb_Request" cellpadding="1" cellspacing="0" width="100%" style="background-color: #DFE8F6; font-size:12px; padding:10px;">

<thead>

<tr>

<th>序號</th>

<th>明細編號</th>

<th>

資產(chǎn)類型

</th>

<th>

使用工位

</th>

<th>

申請數(shù)量

</th>

<th>

發(fā)放的資產(chǎn)號<font color="red">(資產(chǎn)管理員填寫)</font>

</th>

</tr>

</thead>

<tbody>

<asp:Repeater ID="rptRequest" runat="server" onitemcommand="rptRequest_ItemCommand"

onitemdatabound="rptRequest_ItemDataBound">

<ItemTemplate>

<tr id="tr_Request">

<td>

<%# Container.ItemIndex+1 %>

<asp:Label ID="lblGuid" runat="server" Text='<%#Eval("Guid") %>' Visible="false"></asp:Label>

</td>

<td><asp:Label ID="lblEquRequestItemId" runat="server" Text='<%#Eval("EquRequestItemId") %>'></asp:Label></td>

<td>

<asp:DropDownList ID="ddlEquipmentType" runat="server"></asp:DropDownList>

<asp:Label ID="lblEquipmentType" runat="server" Text='<%#Eval("EquipmentType") %>' Visible="false"></asp:Label>

</td>

<td>

<asp:DropDownList ID="ddlStation" runat="server"></asp:DropDownList>

<asp:Label ID="lblStation" runat="server" Text='<%#Eval("Station") %>' Visible="false"></asp:Label>

</td>

<td><asp:TextBox ID="txtReqEquipmentNum" runat="server" Text='<%#Eval("EquipmentNum") %>'></asp:TextBox></td>

<td><asp:TextBox ID="txtEquipmentIds" runat="server" Text='<%#Eval("EquipmentIds") %>' TextMode="MultiLine"></asp:TextBox></td>

<td><asp:Button ID="btnAddRow" runat="server" Text="新增一行" CommandName="add" />

&nbsp;&nbsp;&nbsp;&nbsp;<asp:Button ID="btnDeleteRow" runat="server" Text="刪除本行" CommandName="delete" /></td>

</tr>

</ItemTemplate>

</asp:Repeater>

</tbody>

</table>

</div>

后臺:

代碼如下:

/// <summary>

/// 綁定repeater的數(shù)據(jù)源

/// </summary>

private void RepeaterBindData()

{

DataTable dt = DefineDataTableSchema(hfRptColumns.Value);

if (Request["BusinessNo"] == null)

{

LoadData(dt);

}

else

{

LoadData(Request["BusinessNo"].ToString(), dt);

}

rptRequest.DataSource = dt;

rptRequest.DataBind();

}

private void LoadData(string businessNo, DataTable dt)

{

string strSql = "select * from EMS_EquipmentRequestItem where BussinessNo = '"+ businessNo +"'";

DataTable dt_EquipmentRequestItem = DBUtility.DbHelperSQL.Query(strSql).Tables[0];

//for (int i = 0; i < dt_EquipmentRequestItem.Rows.Count; i++)

foreach (DataRow dr in dt_EquipmentRequestItem.Rows)

{

DataRow row = dt.NewRow();

row["Guid"] = Guid.NewGuid();

row["EquRequestItemId"] = dr["EquRequestItemId"].ToString();

row["EquipmentType"] = dr["TypeId"].ToString();

row["Station"] = dr["StationId"].ToString();

row["EquipmentNum"] = dr["EquipmentNum"].ToString();

row["EquipmentIds"] = dr["EquipmentIds"].ToString();

dt.Rows.Add(row);

}

}

/// <summary>

/// repeater數(shù)據(jù)默認加載

/// </summary>

/// <param name="dt"></param>

private void LoadData(DataTable dt)

{

//默認顯示1行

for (int i = 0; i < 1; i++)

{

DataRow row = dt.NewRow();

dt.Rows.Add(row);

}

//為第一行加載一些數(shù)據(jù)

DataRow row0 = dt.Rows[0];

row0["Guid"] = Guid.NewGuid();

row0["EquRequestItemId"] = "";

row0["EquipmentType"] = "";

row0["Station"] = "";

row0["EquipmentNum"] = "1";//默認初始為1

row0["EquipmentIds"] = "";

}

/// <summary>

/// 根據(jù)repeater相對應(yīng)的列名,定義數(shù)據(jù)源datatable的schema

/// </summary>

/// <param name="columns">列名</param>

/// <returns></returns>

public DataTable DefineDataTableSchema(string columns)

{

DataTable dt = new DataTable();

string[] columnsAry = columns.Split(',');

foreach (string str in columnsAry)

{

dt.Columns.Add(str);

}

return dt;

}

protected void rptRequest_ItemCommand(object source, RepeaterCommandEventArgs e)

{

if (e.CommandName == "add")

{

System.Web.UI.WebControls.Label lblGuid = (System.Web.UI.WebControls.Label)e.Item.FindControl("lblGuid");

//首先,恢復(fù)數(shù)據(jù)源

DataTable dt = DefineDataTableSchema(hfRptColumns.Value);

foreach (RepeaterItem item in rptRequest.Items)

{

DataRow newRow = dt.NewRow();

newRow["Guid"] = ((System.Web.UI.WebControls.Label)item.FindControl("lblGuid")).Text;

newRow["EquRequestItemId"] = ((System.Web.UI.WebControls.Label)item.FindControl("lblEquRequestItemId")).Text;

newRow["EquipmentType"] = ((DropDownList)item.FindControl("ddlEquipmentType")).SelectedValue;

newRow["Station"] = ((DropDownList)item.FindControl("ddlStation")).SelectedValue;

newRow["EquipmentNum"] = ((TextBox)item.FindControl("txtReqEquipmentNum")).Text;

newRow["EquipmentIds"] = ((TextBox)item.FindControl("txtEquipmentIds")).Text;

dt.Rows.Add(newRow);

if (lblGuid.Text == ((System.Web.UI.WebControls.Label)item.FindControl("lblGuid")).Text)

{

//添加一行

DataRow row = dt.NewRow();

row["Guid"] = Guid.NewGuid();

row["EquipmentType"] = "";

row["Station"] = "";

row["EquipmentNum"] = "1";//默認初始為1

row["EquipmentIds"] = "";

dt.Rows.Add(row);

}

}

rptRequest.DataSource = dt;

rptRequest.DataBind();

}

else if (e.CommandName == "delete")

{

System.Web.UI.WebControls.Label lblGuid = (System.Web.UI.WebControls.Label)e.Item.FindControl("lblGuid");

//首先,恢復(fù)數(shù)據(jù)源

DataTable dt = DefineDataTableSchema(hfRptColumns.Value);

foreach (RepeaterItem item in rptRequest.Items)

{

if (lblGuid.Text != ((System.Web.UI.WebControls.Label)item.FindControl("lblGuid")).Text)

{

DataRow newRow = dt.NewRow();

newRow["Guid"] = ((System.Web.UI.WebControls.Label)item.FindControl("lblGuid")).Text;

newRow["EquRequestItemId"] = ((System.Web.UI.WebControls.Label)item.FindControl("lblEquRequestItemId")).Text;

newRow["EquipmentType"] = ((DropDownList)item.FindControl("ddlEquipmentType")).SelectedValue;

newRow["Station"] = ((DropDownList)item.FindControl("ddlStation")).SelectedValue;

newRow["EquipmentNum"] = ((TextBox)item.FindControl("txtReqEquipmentNum")).Text;

newRow["EquipmentIds"] = ((TextBox)item.FindControl("txtEquipmentIds")).Text;

dt.Rows.Add(newRow);

}

}

rptRequest.DataSource = dt;

rptRequest.DataBind();

}

}

protected void rptRequest_ItemDataBound(object sender, RepeaterItemEventArgs e)

{

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)

{

DropDownList ddlEquipmentType_temp = e.Item.FindControl("ddlEquipmentType") as DropDownList;

string sqlstr = @"select distinct b.TypeId,b.EquipmentName + '_' + b.EquipmentType as 'EquipmentName_EquipmentType'

from EMS_EquipmentInfo a

join EMS_EquipmentType b on a.TypeId = b.TypeId and b.Status = '1'

order by EquipmentName_EquipmentType";

DataSet ds = DBUtility.DbHelperSQL.Query(sqlstr);

ddlEquipmentType_temp.DataTextField = "EquipmentName_EquipmentType";

ddlEquipmentType_temp.DataValueField = "TypeId";

ddlEquipmentType_temp.DataSource = ds;

ddlEquipmentType_temp.DataBind();

ddlEquipmentType_temp.SelectedValue = (e.Item.FindControl("lblEquipmentType") as System.Web.UI.WebControls.Label).Text;

DropDownList ddlStation_temp = e.Item.FindControl("ddlStation") as DropDownList;

string sqlstr2 = @"select NodeId,Line + '_' + StationName as 'Line_StationName' from V_Stations where status='1' order by Line_StationName";

DataSet ds2 = DBUtility.DbHelperSQL.Query(sqlstr2);

ddlStation_temp.DataTextField = "Line_StationName";

ddlStation_temp.DataValueField = "NodeId";

ddlStation_temp.DataSource = ds2;

ddlStation_temp.DataBind();

ddlStation_temp.SelectedValue = (e.Item.FindControl("lblStation") as System.Web.UI.WebControls.Label).Text;

TextBox txtEquIds = e.Item.FindControl("txtEquipmentIds") as TextBox;

txtEquIds.Attributes.Add("readonly", "true");

if (Request["BusinessNo"] != null)

{

(e.Item.FindControl("btnAddRow") as System.Web.UI.WebControls.Button).Visible = false;

(e.Item.FindControl("btnDeleteRow") as System.Web.UI.WebControls.Button).Visible = false;

string businessNo = Request["BusinessNo"].ToString();

bool IsApplyUser = Is_ApplyUser(Session["currentUserID"].ToString(), businessNo, "EMS_EquipmentRequest", "Requester");//是否為申請人本人

if (IsApplyUser == true)

{

string requestStatus = HttpUtility.UrlDecode(Request["RequestStatus"].ToString(), System.Text.Encoding.UTF8);//申請單的當(dāng)前狀態(tài)

if (requestStatus == "草稿" || requestStatus == "退回")

{

(e.Item.FindControl("btnAddRow") as System.Web.UI.WebControls.Button).Visible = true;

(e.Item.FindControl("btnDeleteRow") as System.Web.UI.WebControls.Button).Visible = true;

}

}

else

{

bool IsCurrentAppprovaler = Is_CurrentAppprovaler(Session["currentUserID"].ToString(), businessNo);//是否為當(dāng)前能做審批的人

if (IsCurrentAppprovaler == true)

{

string sql = " SELECT TOP 1 LayerName from EMS_Approvaler where BussinessNo='" + businessNo + "' "

+ " AND ApprovalStatus='N' ORDER BY AppSequence ";

DataTable dt = DBUtility.DbHelperSQL.Query(sql).Tables[0];

if (dt.Rows.Count != 0 && dt.Rows[0]["LayerName"].ToString() == "資產(chǎn)管理員")

{

string ReqNum = (e.Item.FindControl("txtReqEquipmentNum") as TextBox).Text.Trim();

txtEquIds.Attributes.Add("onclick", "OpenWindow('" + txtEquIds.ClientID + "','" + ddlEquipmentType_temp.SelectedValue + "','" + ReqNum + "')");

}

}

}

}

}

}

更多信息請查看IT技術(shù)專欄

更多信息請查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機網(wǎng)站地址:asp.net中Repeater控件用法筆記

2026上岸·考公考編培訓(xùn)報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
久久久久久一区二区三区| 欧美在线亚洲| 一区二区三区欧美| 欧美va亚洲va日韩∨a综合色| 国产一区视频网站| 欧美亚洲系列| 国产精品久久久一本精品| 亚洲视频在线观看一区| 国产精品vvv| 亚洲伊人观看| 国产亚洲视频在线观看| 久久精品亚洲热| 亚洲国产免费看| 欧美伦理在线观看| 亚洲综合精品自拍| 国产一区二区三区奇米久涩| 久久久久青草大香线综合精品| 亚洲巨乳在线| 国产麻豆成人精品| 欧美成人乱码一区二区三区| 中国成人亚色综合网站| 国产亚洲欧美一级| 欧美日韩国产一区二区三区| 亚洲欧美色一区| 亚洲毛片一区二区| 国产乱码精品一区二区三| 久久久亚洲高清| 日韩视频在线播放| 国产精品一区二区你懂得| 久热国产精品视频| 亚洲女性喷水在线观看一区| 一区二区三区自拍| 国产精品免费福利| 欧美电影免费观看高清完整版| 99国产精品久久久久老师| 国产一区二区三区精品久久久| 欧美另类人妖| 可以看av的网站久久看| 性一交一乱一区二区洋洋av| 一区二区欧美国产| 久久久亚洲一区| 亚洲一区二区精品在线| 亚洲啪啪91| 狠狠v欧美v日韩v亚洲ⅴ| 欧美日韩一区二区视频在线观看| 久久高清一区| 亚洲午夜一区| 亚洲精选在线| 在线免费观看一区二区三区| 国产精品二区三区四区| 欧美激情女人20p| 毛片av中文字幕一区二区| 欧美在线网站| 亚洲综合丁香| 国产精品激情| 国产精品久久久久久影院8一贰佰| 欧美大片在线观看一区| 久久嫩草精品久久久精品| 久久久视频精品| 久久亚洲一区二区| 欧美成人亚洲成人| 欧美激情四色| 欧美日韩精品综合在线| 欧美成人一区在线| 欧美精品在线一区二区| 欧美视频一区二区在线观看| 欧美视频一区二区三区…| 国产精品你懂的| 国产欧美一区二区三区另类精品| 国产欧美一区二区三区久久 | 悠悠资源网亚洲青| 精品动漫3d一区二区三区免费版 | 狠狠综合久久| 黄色日韩在线| 久久久久久久久久久久久9999| 亚洲欧美日韩国产另类专区| 在线视频中文亚洲| 亚洲午夜激情免费视频| 亚洲色诱最新| 亚洲欧美日韩另类| 久久精品国产亚洲高清剧情介绍| 久久久久99| 欧美国产日本高清在线| 欧美日韩精品一区二区在线播放| 国产精品成人久久久久| 国产精品丝袜白浆摸在线| 国产精品欧美日韩一区| 合欧美一区二区三区| 最新亚洲视频| 99国产精品国产精品久久 | 国内自拍一区| 韩国成人理伦片免费播放| 激情文学一区| 亚洲人成毛片在线播放| 一区二区三区欧美激情| 亚洲深夜福利| 亚洲欧美日韩精品久久| 美女露胸一区二区三区| 性欧美激情精品| 欧美一区二区三区在线观看| 亚洲调教视频在线观看| 亚洲大片在线| 国产乱码精品1区2区3区| 国内成+人亚洲| 国产精品成人免费| 欧美日韩国产一区二区| 亚洲性视频网站| 亚洲欧美中日韩| 宅男精品视频| 久久国产一区二区| 校园春色国产精品| 午夜免费久久久久| 小黄鸭精品密入口导航| 欧美日韩成人综合天天影院| 欧美精品久久久久久久久老牛影院 | 狠狠入ady亚洲精品经典电影| 久久不射电影网| 欧美久久影院| 欧美成人综合一区| 国产一区视频观看| 国内精品伊人久久久久av一坑| 亚洲美女中文字幕| 国产精品美女久久| av成人天堂| 欧美一区二区三区免费大片| 欧美.com| 男女视频一区二区| 国产日韩欧美精品一区| 国产精品一区免费视频| 9l国产精品久久久久麻豆| 国产亚洲一级| 午夜欧美理论片| 欧美一区在线视频| 国产精品久久久久av免费| 欧美少妇一区| 亚洲黄页一区| 欧美ed2k| 国产精品视频福利| 亚洲视频一区二区免费在线观看| 亚洲视频一区二区| 欧美激情精品久久久久久蜜臀| 欧美天堂亚洲电影院在线观看| 亚洲乱码国产乱码精品精| 亚洲欧美制服另类日韩| 国产日产精品一区二区三区四区的观看方式 | 亚洲第一视频| 亚洲精品美女免费| 极品尤物一区二区三区| 久久九九免费视频| 欧美老女人xx| 亚洲视频一区二区在线观看| 欧美在线视频导航| 国内免费精品永久在线视频| 亚洲肉体裸体xxxx137| 欧美精品乱码久久久久久按摩| 国产精品美女久久久久久2018| 亚洲午夜精品久久久久久浪潮 | 久久国产精品久久久| 欧美大片免费观看在线观看网站推荐| 亚洲欧洲在线一区| 久久国内精品视频| 亚洲高清影视| 销魂美女一区二区三区视频在线| 国产在线日韩| 欧美一二三视频| 亚洲国产精品尤物yw在线观看 | 欧美黄色影院| 国内精品亚洲| 久久国产一区二区三区| 欧美高清在线一区| 国产自产女人91一区在线观看| 亚洲图片激情小说| 欧美人在线视频| 韩国视频理论视频久久| 欧美有码在线视频| 国产欧美日韩伦理| 午夜伦欧美伦电影理论片| 欧美日韩免费一区二区三区视频 | 一区二区亚洲| 午夜在线视频观看日韩17c| 激情综合视频| 性欧美暴力猛交69hd| 亚洲人成亚洲人成在线观看| 久久精品日产第一区二区| 亚洲精品综合| 欧美日韩国产在线播放网站| 香蕉免费一区二区三区在线观看| 欧美精品日韩三级| 久久久xxx| 黄色欧美日韩| 国产模特精品视频久久久久| 午夜一区不卡| 一本色道久久综合精品竹菊| 欧美精品一区在线发布| 久久久久一区二区三区| 国产主播精品| 国产精品午夜在线| 国产精品视频一区二区三区| 欧美第一黄网免费网站| 99精品欧美一区二区三区综合在线|