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

首頁(yè) > 編程 > ASP > 正文

深入講解 ASP+ 驗(yàn)證(三)

2024-05-04 11:10:21
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
客戶端的驗(yàn)證

如果您的頁(yè)面啟用了客戶端驗(yàn)證,則在往返過(guò)程中會(huì)發(fā)生完全不同的事件序列??蛻舳说尿?yàn)證使用客戶端 Jscript® 實(shí)現(xiàn)。實(shí)現(xiàn)該驗(yàn)證不需要任何二進(jìn)制組件。

盡管 Jscript 語(yǔ)言的標(biāo)準(zhǔn)化做得很好,但是用于與瀏覽器中的 HTML 文檔交互的文檔對(duì)象模型 (Document Object Model, DOM) 沒(méi)有廣泛采用的標(biāo)準(zhǔn)。因此,客戶端的驗(yàn)證只在 Internet Explorer 4.0 和更高版本中進(jìn)行,因?yàn)樵擈?yàn)證的對(duì)象是 Internet Explorer DOM。

從服務(wù)器的角度來(lái)說(shuō),客戶端的驗(yàn)證只意味著驗(yàn)證控件將不同的內(nèi)容發(fā)送到 HTML 中。除此之外,其事件序列完全相同。服務(wù)器端的檢查仍然執(zhí)行。盡管看起來(lái)似乎多余,但是卻十分重要,因?yàn)椋?

某些驗(yàn)證控件可能不支持客戶端腳本。有一個(gè)很好的例子:如果要同時(shí)使用 CustomValidator 和服務(wù)器驗(yàn)證函數(shù),但是沒(méi)有客戶機(jī)驗(yàn)證函數(shù)。
安全性注意事項(xiàng)。某些人可以很容易得到一個(gè)包含腳本的頁(yè)面,然后禁用或更改該頁(yè)面。您不應(yīng)利用腳本來(lái)阻止壞數(shù)據(jù)進(jìn)入您的系統(tǒng),而只應(yīng)是為了用戶得到更快的反饋。因此,如果要使用 CustomValidator,則不應(yīng)提供沒(méi)有相應(yīng)服務(wù)器驗(yàn)證函數(shù)的客戶機(jī)驗(yàn)證函數(shù)。
每個(gè)驗(yàn)證控件都可以確保將一個(gè)標(biāo)準(zhǔn)的客戶端腳本塊發(fā)送到頁(yè)面中。實(shí)際上,這只是一小部分代碼,其中包含對(duì)腳本庫(kù) WebUIValidation.js 中的代碼的引用。這個(gè)腳本庫(kù)文件包含客戶端驗(yàn)證的所有邏輯,該文件需單獨(dú)下載,并且可以存儲(chǔ)在瀏覽器的緩存中。

關(guān)于腳本庫(kù)

因?yàn)轵?yàn)證 Web 控件腳本在腳本庫(kù)中,所以不必將所有客戶端驗(yàn)證的代碼直接發(fā)送到頁(yè)面中,盡管表面上似乎是這樣做的。主要的腳本文件引用類似如下所示:

<script language="javascript"      
src="/_aspx/1.0.9999/script/WebUIValidation.js"></script>

默認(rèn)情況下,腳本文件將安裝在 "_aspx" 目錄中默認(rèn)的根目錄下,并使用相對(duì)于根的腳本 include 指令調(diào)用,該指令以正斜線開(kāi)頭。該引用表明每個(gè)單獨(dú)的對(duì)象不必包含腳本庫(kù),同一臺(tái)計(jì)算機(jī)上的所有頁(yè)面可以引用同一個(gè)文件。您會(huì)注意到,該路徑中還有一個(gè)公用的語(yǔ)言運(yùn)行時(shí)版本號(hào),以便不同的運(yùn)行時(shí)版本可以在同一臺(tái)計(jì)算機(jī)上運(yùn)行。

如果查看一下您默認(rèn)的虛擬根目錄,您會(huì)找到該文件并查看其中的內(nèi)容。這些文件的位置在 config.web 文件中指定。config.web 文件是一個(gè)用于大多數(shù) ASP+ 設(shè)置的 XML 文件。以下是該文件中位置的定義:

    <webcontrols
        clientscriptslocation="/_aspx/{0}/script/"
    />        

鼓勵(lì)您閱讀該腳本,以便深入了解發(fā)生的事件。不過(guò),建議您不要修改這些腳本,因?yàn)樗鼈兊墓δ芘c特定的運(yùn)行時(shí)版本緊密相連。在運(yùn)行時(shí)版本更新時(shí),這些腳本可能也需要相應(yīng)的更新,您將或者放棄更改,或者面臨腳本不工作的問(wèn)題。如果特定項(xiàng)目必須更改這些腳本,先備份這些腳本,然后將您的項(xiàng)目指向備份文件,方法是使用私有的 config.web 文件替代這些文件的位置。如果字符串中包含格式指令 "{0}",運(yùn)行時(shí)版本號(hào)將替換該指令。最好將該位置更改為一個(gè)相對(duì)引用或絕對(duì)引用。

禁用客戶端的驗(yàn)證

有時(shí)您可能不希望進(jìn)行客戶端驗(yàn)證。如果輸入字段的數(shù)目很少,客戶端驗(yàn)證可能用處不大。您畢竟每次都要有一個(gè)需要往返服務(wù)器一次的邏輯。您會(huì)發(fā)現(xiàn)客戶機(jī)上動(dòng)態(tài)出現(xiàn)的信息對(duì)您的布局會(huì)有負(fù)面影響。

要禁用客戶端驗(yàn)證,應(yīng)使用 Page 指令 "clienttarget=downlevel"。該指令類似以下 ASPX 文件的開(kāi)頭:

<%@ Page Language="c#" clienttarget=downlevel %>

該指令的默認(rèn)值為 "auto",表示您只對(duì) Microsoft Internet Explorer 4.0 或更高版本進(jìn)行客戶端驗(yàn)證。

注意:   不幸的是,在 Beta 1 中,該指令并非僅僅是禁用驗(yàn)證,同時(shí)還會(huì)使所有 Web 控件使用 HTML 3.2 標(biāo)記來(lái)處理,這可能會(huì)產(chǎn)生意想不到的結(jié)果。最終版本提供了更好的方法來(lái)控制這個(gè)問(wèn)題。

客戶端事件序列

該序列是在運(yùn)行包含客戶端驗(yàn)證的頁(yè)面時(shí)發(fā)生的事件序列:

在頁(yè)面載入瀏覽器時(shí),需要對(duì)每個(gè)驗(yàn)證控件進(jìn)行一些初始化。這些控件作為 <span> 標(biāo)記發(fā)送,其 HTML 特性與服務(wù)器上的特性最接近。最重要的是,此時(shí)會(huì)將驗(yàn)證器引用的所有輸入元素“掛接”。被引用的輸入元素將修改其客戶端事件,以便在每次輸入更改時(shí)調(diào)用驗(yàn)證例程。
腳本庫(kù)中的代碼將在用戶使用 tab 鍵在各字段之間切換時(shí)執(zhí)行。某個(gè)獨(dú)立的字段更改時(shí),將重新評(píng)估驗(yàn)證條件,根據(jù)需要使驗(yàn)證器可見(jiàn)或不可見(jiàn)。
當(dāng)用戶嘗試提交表單時(shí),將重新評(píng)估所有驗(yàn)證器。如果這些驗(yàn)證器全部有效,表單將提交給服務(wù)器。如果存在一處或多處錯(cuò)誤,則會(huì)出現(xiàn)下述情況:
提交被取消。表單并不提交給服務(wù)器。
所有無(wú)效的驗(yàn)證器均可見(jiàn)。
如果某個(gè)驗(yàn)證摘要包含 ShowSummary=true,則將收集來(lái)自驗(yàn)證控件的所有錯(cuò)誤,并使用這些錯(cuò)誤更新其內(nèi)容。
如果某個(gè)驗(yàn)證摘要包含 ShowMessageBox=true,則將收集錯(cuò)誤,并在客戶機(jī)的信息框中顯示這些錯(cuò)誤。
因?yàn)樵诿看屋斎敫臅r(shí)或提交時(shí)會(huì)執(zhí)行客戶端驗(yàn)證控件,所以在客戶機(jī)上通常會(huì)評(píng)估這些驗(yàn)證控件兩次或兩次以上。請(qǐng)注意,提交后,仍將會(huì)在服務(wù)器上對(duì)這些驗(yàn)證控件進(jìn)行重新評(píng)估。

客戶端 API

有一個(gè)可以在客戶機(jī)上使用的小型 API,以便在您自己的客戶端代碼中實(shí)現(xiàn)各種效果。因?yàn)槟承├滩豢赡茈[藏,所以理論上講,您可以利用客戶端驗(yàn)證腳本所定義的所有變量、特性和函數(shù)。不過(guò),其中許多都是可以更改的實(shí)施細(xì)節(jié)。以下總結(jié)了我們鼓勵(lì)您使用的客戶端對(duì)象。

表 3. 客戶端對(duì)象

名稱 類型 說(shuō)明
Page_IsValid Boolean 變量 指出頁(yè)面當(dāng)前是否有效。驗(yàn)證腳本總是保持該變量為最新。
Page_Validators 元素?cái)?shù)組 這是包含頁(yè)面上所有驗(yàn)證器的數(shù)組。
Page_ValidationActive Boolean 變量 指出是否應(yīng)進(jìn)行驗(yàn)證。將此變量設(shè)置為 False 可以通過(guò)編程關(guān)閉驗(yàn)證。
isvalid Boolean 屬性 每個(gè)客戶端驗(yàn)證器均具有該屬性,指出驗(yàn)證器當(dāng)前是否有效。請(qǐng)注意,在 PDC 版本中,該屬性混用大小寫(xiě) ("IsValid")。


繞過(guò)客戶端驗(yàn)證

您經(jīng)常需要執(zhí)行的一項(xiàng)任務(wù)是在頁(yè)面上添加“取消”按鈕或?qū)Ш桨粹o。在這種情況下,即使頁(yè)面上有錯(cuò)誤,您可能也希望使用該按鈕提交頁(yè)面。因?yàn)榭蛻舳税粹o "onclick" 事件在表單的 "onsubmit" 事件之前發(fā)生,因此可能會(huì)避免提交檢查,并繞過(guò)驗(yàn)證。以下說(shuō)明如何使用 HTML Image 控件作為“取消”按鈕完成該任務(wù):

<input type=image runat=server
   value="取消"
     
   OnServerClick=cmdCancel_Click >

使用 Button 或 ImageButton 控件執(zhí)行該任務(wù)會(huì)出現(xiàn)一些混淆,因?yàn)?"onclick" 事件假定為同名的服務(wù)器端事件。您應(yīng)在客戶端腳本中設(shè)置該事件:

<asp:ImageButton runat=server id=cmdImgCancel
AlternateText="取消"
OnClick=cmdCancel_Click/>

<script language="javascript">
document.all["cmdImgCancel "].onclick =
           new Function("Page_ValidationActive=false;");
</script>

解決該問(wèn)題的另一種方法是:對(duì)“取消”按鈕進(jìn)行一定的設(shè)置,使其在返回時(shí)不會(huì)觸發(fā)客戶端腳本中的提交事件。HtmlInputButton 和 LinkButton 控件就是這樣的例子。

特殊效果

另一種常見(jiàn)的要求是:在出錯(cuò)時(shí),除了由驗(yàn)證器自身顯示的錯(cuò)誤信息外,還需要其它一些效果。在這種情況下,您所作的任何修改均需在服務(wù)器或客戶機(jī)上同時(shí)進(jìn)行。假設(shè)您需要加入一個(gè) Label,根據(jù)輸入是否有效來(lái)更改顏色。以下是如何在服務(wù)器上實(shí)現(xiàn)該任務(wù):

public class ChangeColorPage : Page {
    public Label lblZip;
    public RegularExpressionValidator valZip;
    
    protected override void OnLoad(EventArgs e) {            
        lblZip.ForeColor = valZip.IsValid? Color.Black : Color.Red;
    }               
}

上述方法一切都很完美,但是,只要您如上所述修改驗(yàn)證,就會(huì)發(fā)現(xiàn)除非您在客戶機(jī)上進(jìn)行了相同的操作,否則看起來(lái)會(huì)非常不一致。驗(yàn)證框架會(huì)使您避免許多這種雙重效果,但是無(wú)法避免您必須在客戶機(jī)和服務(wù)器上同時(shí)實(shí)現(xiàn)的其它效果。以下是在客戶機(jī)上執(zhí)行同一任務(wù)的片段:

<asp:Label id=lblZip runat=server
   Text="Zip Code:"/>
<asp:TextBox id=txtZip runat=server
    /></asp:TextBox><br>
<asp:RegularExpressionValidator id=valZip runat=server
   ControlToValidate=txtZip
   ErrorMessage="無(wú)效的郵政編碼"
   ValidationExpression="[0-9]{5}" /><br>

<script language=javascript>
function txtZipOnChange() {
   //如果客戶端驗(yàn)證未處于活動(dòng)狀態(tài),則不執(zhí)行任何操作
   if (typeof(Page_Validators) == "undefined")  return;
   //更改標(biāo)簽的顏色
   lblZip.style.color = valZip.isvalid ? "Black" : "Red";
}
</script>

Beta 1 客戶端 API

對(duì)于 Beta 1 版,一些可以從客戶端腳本調(diào)用的函數(shù)會(huì)造成其它一些情況。

表 4. 從客戶端腳本調(diào)用的函數(shù)

名稱 說(shuō)明
ValidatorValidate(val) 將某個(gè)客戶端驗(yàn)證器作為輸入。使驗(yàn)證器檢查其輸入并更新其顯示。
ValidatorEnable(val, enable) 獲取一個(gè)客戶端驗(yàn)證器和一個(gè) Boolean 值。啟用或禁用客戶端驗(yàn)證器。如果禁用,將不會(huì)評(píng)估客戶端驗(yàn)證器,客戶端驗(yàn)證器將總是顯示為有效。
ValidatorHookupControl(control, val) 獲取一個(gè)輸入 HTML 元素和一個(gè)客戶端驗(yàn)證器。修改或創(chuàng)建該元素的 change 事件,以便在更改時(shí)更新驗(yàn)證器。該函數(shù)適合于基于多個(gè)輸入值的自定義驗(yàn)證器。


其特殊用途是啟用或禁用驗(yàn)證器。如果您希望驗(yàn)證只是在特定的情況下生效,可能需要在服務(wù)器和客戶機(jī)上同時(shí)更改激活狀態(tài),否則,您會(huì)發(fā)現(xiàn)用戶無(wú)法提交該頁(yè)面。

以下是上面的示例加上一個(gè)字段,該字段只在取消選中某個(gè)復(fù)選框時(shí)才會(huì)進(jìn)行驗(yàn)證。

    public class Conditional : Page {
        public HtmlInputCheckBox chkSameAs;
        public RequiredFieldValidator rfvalShipAddress;
        protected override void Validate() {
            bool enableShip = !chkSameAs.Checked;
            rfvalShipAddress.Enabled = enableShip;
            base.Validate();
        }
    }

以下是客戶端等效的代碼:

<input type=checkbox runat=server id=chkSameAs
    >與付款地址相同<br>
<script language=javascript>
function OnChangeSameAs() {
    var enableShip = !event.srcElement.status;
    ValidatorEnable(rfvalShipAddress, enableShip);
}
</script>



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
欧美日韩免费在线| 五月婷婷久久久| 一区二区在线不卡| 亚洲福利在线播放| 日本免费视频www| 欧美日韩免费观看一区二区三区| 视频一区视频二区视频三区高| 香蕉久久久久久久| 2023国产精品自拍| 秋霞午夜剧场| 精品久久久久久一区二区里番| 992tv在线观看免费进| 国产精品入口| jizzjizz亚洲中国少妇| 亚洲欧美精品| 成熟人妻av无码专区| 美女久久久久久久久| 欧美日韩一区在线观看视频| 欧美精品欧美精品| 国产精品久久久久久户外露出| 国产伦视频一区二区三区| 日韩精品91| av成人免费看| 国产国产人免费人成免费视频| 免费网站观看电影入口| 国产毛片毛片| 8090成年在线看片午夜| 久久久久久av无码免费看大片| 亚洲国产欧美日韩另类综合| av影音在线| 97激碰免费视频| 精品人妻一区二区三区日产| 黄色在线视频网址| 久久精品无码一区| 先锋影音国产精品| 亚洲黄色片免费| 羞羞的视频在线观看| 亚洲第一页在线| 国产精品久久久久久搜索| av综合电影网站| 国产精品中文欧美| 日韩欧美99| 中文字幕人妻一区二区三区| 欧美aaaaa级| 欧美xxxxbbbb| 免费精品一区| 麻豆一区二区在线观看| 天天综合网天天综合色| 国产精品高潮呻吟久久| 在线不卡免费欧美| 蜜桃视频久久一区免费观看入口| 午夜精品久久久久久久第一页按摩| 日韩毛片无码永久免费看| 国产成人aa精品一区在线播放| 青娱乐免费在线视频| 在线观看亚洲天堂| 免费看国产片在线观看| 91免费国产网站| 亚洲精品tv| 中文在线中文资源| 亚洲欧美日韩一区二区| 99精品1区2区| 91高清视频免费观看| 国产美女高潮久久白浆| 欧美精选午夜久久久乱码6080| 欧美videossex另类| eeuss影院www免费看| 中文字幕欧美精品日韩中文字幕| 亚洲av无码一区二区二三区| 中文字幕一区二区三区在线播放| 国产男女无套在线播放| 亚洲日本视频在线观看| 精品无码人妻一区二区三| 欧美激情亚洲国产| 国产偷自视频区视频一区二区| 久久久精品美女| 五月天亚洲综合| 亚洲AV第二区国产精品| 国产精品久久久一区| 欧美成人69| 看av免费毛片手机播放| 中国女人内谢69视频| 欧美一区二区三区四区五区六区| 欧美国产日韩在线视频| 日本韩国一区二区三区| 亚洲永久精品大片| 成人知道污网站| 麻豆91在线播放免费| 91免费高清视频| 精品久久久久久中文字幕大豆网| av在线亚洲男人的天堂| 欧美激情综合| 国产视频一二三四区| 69久久夜色精品国产69蝌蚪网| 激情六月婷婷久久| 亚洲成人av一区二区三区| а√天堂www在线а√天堂视频| 国产911网站| 在线看片中文字幕| 伊人色综合网| 日韩二区三区四区| 久草视频国产| 欧美视频一区二区三区在线观看| 欧美视频一区二区三区四区| 欧美日韩一区精品| 欧美日韩怡红院| 男男激情在线| 888av在线| 一级黄色片国产| 国产性猛交╳xxx乱大交| 国产精品欧美一区喷水| 性少妇bbw张开| 国产精品免费丝袜| 自拍视频一区二区三区| 国产在线观看一区二区三区| 日本特黄a级片| 日本一区二区三区四区五区| 男女免费观看在线爽爽爽视频| 宅男av一区二区三区| 亚洲 欧美 自拍偷拍| 日本成人片在线| 懂色av一区二区三区四区| 亚洲精品视频一区| 在线视频不卡一区二区三区| 国产精品亚洲第一| 91短视频版在线观看www免费| 成人a级免费视频| 欧美牲交a欧美牲交| 久久国产精品免费精品3p| 97在线观看免费| 亚洲欧美在线另类| 婷婷精品国产一区二区三区日韩| 日本精品久久久久中文字幕| 四虎成人精品在永久免费| 欧美丰满美乳xxx高潮www| 亚洲福利精品视频| 日韩欧美黄色| 国产乱码精品一区二区三区四区| 日韩日韩日韩日韩| 97视频在线观看视频免费视频| jizzjizzjizzjizz日本| 一区二区三区小说| 美女把尿口扒开让男人桶在线观看| 爱爱视频网站免费| 青娱乐精品视频在线| 亚洲乱码中文字幕久久孕妇黑人| 午夜男人视频在线观看| 在线免费国产视频| 日本乱码一区二区三区不卡| 亚洲香蕉av在线一区二区三区| 欧美在线不卡一区| 日本福利在线观看| 制服.丝袜.亚洲.中文.综合| 久久99精品国产99久久6尤物| av在线收看| 97不卡在线视频| 99精品国产高清一区二区麻豆| 国产a级网站| 日韩欧美中文字幕电影| 国产午夜精品一区理论片| 91热爆在线观看| 免费在线成人| 欧美激情在线免费观看| 亚洲 欧美 日韩在线| 99在线热播| 日韩伦理一区二区三区av在线| 久久这里只有| jlzzjlzz国产精品久久| 欧美黑人孕妇孕交| 人妖粗暴刺激videos呻吟| 欧美性受xxxx黑人爽| 日韩av一区二区在线观看| 国产小视频在线免费观看| 免费日韩中文字幕| 91av在线国产| 国产丰满果冻videossex| 亚洲一区二区三区四区五区| 欧美一级二级在线观看| 66av国产| 色综合888| 亚洲免费观看在线观看| 黄色免费在线观看网站| 屁屁影院ccyy国产第一页| 青青操免费在线视频| 一区二区三区在线播放| 久久久久久久波多野高潮日日| 四虎4545www精品视频| 丝袜综合欧美| 国产自产高清不卡| 蜜桃视频在线观看免费视频网站www| 国产三级三级三级精品8ⅰ区| 97视频在线看| 日韩在线短视频| 一区在线视频观看| 欧亚精品在线观看| 亚洲久久久久久久久久| 最新视频 - x88av| 亚洲欧美在线高清| www.操操操.com| 伊人手机在线视频| 黄页大全在线免费观看| 成人欧美一区二区三区| 99精品视频免费| 日韩欧美不卡视频| 先锋资源av在线| 国产美女亚洲精品7777| 91精品国产综合久久婷婷香蕉| www视频在线观看com| 欧妇女乱妇女乱视频| 狠狠干综合网| 亚洲一区二区三区乱码aⅴ蜜桃女| 一本色道综合亚洲| 日韩欧美在线视频播放| 免费av播放| 极品美女一区| 国产成人精品一区二区在线小狼| 女同视频在线观看| 亚洲欧洲一区二区三区久久| 国产精品久久毛片| 一卡二卡三卡四卡五卡| 国产精品456| 成人短视频软件网站大全app| 少妇无码一区二区三区| 穿情趣内衣被c到高潮视频| 黄色片视频在线免费观看| 亚洲 欧美 变态 另类 综合| 男女精品视频| 成人美女免费网站视频| 国产精品视频永久免费播放| 亚洲精品影院在线| 91成人在线精品视频| 欧美美女性生活视频| 欧美大片在线影院| 国产成人精品一区二区三区在线观看| 精品欧美一区二区久久久| 91精品国产综合久久香蕉最新版| 登山的目的在线| 欧美亚洲日本在线观看| 亚洲最大av网站| 男插女视频网站| 成人无号精品一区二区三区| 亚洲欧美韩国| 视频一区二区三区在线看免费看| 中文字幕在线观看一区二区三区| 亚洲国产精品va在线| 色欧美片视频在线观看| 99久久久久久| 亚洲高清久久| 国产亚洲欧美日韩高清| 美女免费视频一区| 精品999网站| 日韩亚洲欧美一区二区三区| 中文字幕欧美亚洲| 国内一级毛片| 国产精品色婷婷久久58| 欧美特黄a级高清免费大片a级| 国产伦理一区二区三区| 欧洲vodafone精品| 国产精品美女午夜av| 一道精品视频一区二区三区图片| www.日韩精品| 麻豆成人综合网| 精品一区二区三区影院在线午夜| 亚洲国产资源| 国产中文字幕在线视频| 中文字幕久精品免费视频| 色综合视频一区二区三区44| 欧美日韩乱国产| 亚洲女人****多毛耸耸8| 欧美h版在线观看| 精品一区二区三区无码视频| 国产精品白丝jk喷水视频一区| 五月天婷婷在线观看| 欧美黄色三级| 国语对白做受69| 波多野结衣一区二区三区在线| 91丨porny丨探花| 日本dhxxxxxdh14日本| 91在线视频官网| caoporm免费视频在线| 国产又大又长又粗| 四虎国产精品永久免费观看视频| 天天干天天操天天玩| 日本视频一二三区中文字幕| 欧美在线视频播放| 99精品视频在线播放观看| 国精品人妻无码一区二区三区喝尿| 日韩免费视频网站| 国产精品久久久免费看| 污片免费在线观看| 午夜在线a亚洲v天堂网2018| 国产在线精品一区二区夜色| 久久婷婷国产精品| 99久久.com| 欧美日韩激情一区二区三区| 无套内精的网站| 日韩午夜在线观看| 日韩一级在线观看| 午夜视频精品| 欧美永久精品| 91亚洲精品视频在线观看| 日本熟妇人妻xxxxx| 永久免费看mv网站入口亚洲| 日韩欧美综合视频| 日本黄色免费网站| 成年人网站免费在线观看| 久久精品久久综合| 国产精品天天摸av网| 黄视频在线播放| 久久午夜鲁丝片| 精品中文字幕在线| 日韩欧美亚洲天堂| 亚洲国产成人tv| 国产天堂资源| 中文字幕网址在线| 国产又爽又黄的激情精品视频| 欧美77777免费视频| 欧美日韩激情一区二区| 欧美三级三级三级爽爽爽| 国产美女做爰免费视频软件| swag国产精品一区二区| 日韩图片一区| 97精品一区二区三区| 欧美性猛交xxxx乱大交退制版| 精品免费在线视频| 日韩av一区在线| 91激情视频在线观看| 国产一区影院|