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

首頁 > 編程 > JavaScript > 正文

Javascript連接Access數據庫完整實例

2019-11-20 11:56:28
字體:
來源:轉載
供稿:網友

本文實例講述了Javascript連接Access數據庫的方法。分享給大家供大家參考。具體實現方法如下:

var roc = roc || {};roc.db = roc.db ||{};//創建一個連接roc.db.createDb = function(){  var conn = new ActiveXObject("ADODB.Connection"),     fso = new ActiveXObject("Scripting.FileSystemObject"),    connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fso.GetFile("./db/Sigma.mdb");  conn.Open(connstr);//打開數據庫   roc.db.conn = conn;  return roc.db.conn;};//獲取連接roc.db.getDb = function(){  if( roc.db.conn ){    return roc.db.conn;  }else{    return roc.db.createDb();  }};//關閉連接roc.db.closeConn = function(){  if( roc.db.conn ){    roc.db.conn.close();    roc.db.conn = null;  }};//獲取結果集roc.db.getRs = function( sqlStr ){  var mysql = roc.dom.trim( sqlStr );  if(mysql == ''){return;}  var rs = new ActiveXObject("ADODB.Recordset"),    myConn = roc.db.getDb();  rs.open( sqlStr , myConn );   return rs; };//關閉結果集roc.db.closeRs = function( rs ){  rs.close();  rs =null;};//更新、插入roc.db.execute = function( sqlStr ){  var myConn = roc.db.getDb();  myConn.execute( sqlStr );  roc.db.closeConn();};/*---------Sigma:“我任你踐踏我的尊嚴而毫不生氣,是因為我愛你?!?--------*/roc.dom = roc.dom ||{};roc.dom.id = function( id ){  if(typeof id == 'string' || id instanceof String) {    return document.getElementById(id);  } else if(id && id.nodeName && (id.nodeType == 1 || id.nodeType == 9)) {    return id;  }  return null;  };/** * @method tagName 根據標簽獲取指定dom元素 * @param {String} tagName 元素標簽名稱 * @param {HTMLElement} el 元素所屬的文檔對象 默認為當前文檔 * @return {HTMLElement} 返回HTMLElement元素 */roc.dom.tagName = function(tagName, el) {  var el = el || document;  return el.getElementsByTagName(tagName);};//刪除左右兩端的空格  roc.dom.trim = function (str) {      return (str+'').replace(/(^/s*)|(/s*$)/g, "");}/** * @method show 顯示目標元素 * @param {Element} element 目標元素或目標元素的id * @param {String} element 目標元素 */roc.dom.show = function (element) {  element = roc.dom.id(element);  element.style.display = '';  return element;};/** * @method hide 隱藏目標元素 * @param {Element} element 目標元素或目標元素的id * @param {String} element 目標元素 */roc.dom.hide = function (element) {  element = roc.dom.id(element);  element.style.display = 'none';  return element;};/** * @method hasClass 判斷元素是否含有 class * @param {Element} el 元素 * @param {String} className class 名稱 */roc.dom.hasClass = function(el, className){  var re = new RegExp('(^|//s)' + className + '(//s|$)');  return re.test(el.className);};/** * @method addClass 給元素添加 class  * @param {Element} el 元素 * @param {String} className class 名稱 */roc.dom.addClass = function(el, className){  if(!roc.dom.hasClass(el, className)){    el.className = el.className + ' ' + className;  }};/** * @method removeClass 給元素移除 class * @param {Element} el 元素 * @param {String} className class 名稱 */roc.dom.removeClass = function(el, className){  var re = new RegExp('(^|//s)' + className + '(?://s|$)')  el.className = el.className.replace(re, '$1');};/*** date對象命名空間* * @namespace* @name data*/roc.date = roc.date || {};/** * @method format 對目標日期對象進行格式化 * @param {Object} timestamp 目標日期對象 * @return {String} str 格式化后的時間 */roc.date.format = function(timestamp) {  if(timestamp =='' )return '';  var str = '',    temptime = new Date(Number(timestamp));  str += temptime.getFullYear() + '-';  str += temptime.getMonth() + 1 + '-';  str += temptime.getDate() + ' ';  str += String(temptime.getHours()).length > 1 ? (temptime.getHours() + ':') : ('0' + temptime.getHours() + ':');  str += String(temptime.getMinutes()).length > 1 ? (temptime.getMinutes()) : ('0' + temptime.getMinutes());  return str;};/** * cookie對象命名空間 *  * @namespace * @name cookie */roc.cookie = roc.cookie || {};/** * @method set * @param {String} name cookie的鍵 * @param {String} value cookie的值 * @param {String} expires 失效時間(小時) * @param {String} domain domain域  * @param {String} path 路徑  * @param {String} secure 是否支持https  */roc.cookie.set = function(name, value, expires, domain, path, secure) {  var text = encodeURIComponent(value), date = expires;  if(date && typeof date === 'number') {    date = new Date();    date.setTime(date.getTime() + (expires * 3600000));  }  if(date instanceof Date) {    text += '; expires=' + date.toUTCString();  }  if(domain) {    text += '; domain=' + domain;  }  if(path) {    text += '; path=/' + path;  } else {    text += '; path=/';  }  if(secure) {    text += '; secure';  }  document.cookie = name + '=' + text;};/** * @method get * @param {String} name cookie的鍵  */roc.cookie.get = function(name) {  var ret,    m;  if(name) {    if((m = document.cookie.match('(?:^| )' + name + '(?:(?:=([^;]*))|;|$)'))) {      ret = m[1] ? decodeURIComponent(m[1]) : '';    }  }  return ret;};roc.util = roc.util || {};roc.util.loger = function( type ,msg ){  switch(type){    case 'pop':       alert(msg);      break;    case 'float':break;    default:break;  }};roc.util.resultBlink = function( msg ){  //操作閃爍提示  var $ = roc ,    opt = $.dom.id("optTip");  $.util.toogle = $.util.toogle || 0;  clearTimeout(roc.util.t);//調試  opt.innerHTML = msg ;  $.dom.show(opt);  opt.className = "blink" + $.util.toogle%2;  $.util.toogle++;  roc.util.t = setTimeout(function(){    $.dom.hide(opt);  },$.config.BLINK_DELAY);};roc.util.onlyInputNumber = function( id ){  //限制文本框、文本域只能輸入數字  var $ = roc ,    num = $.dom.id( id );  if( num.tagName.toLowerCase() != 'input' || num.tagName.toLowerCase() != 'textarea' ){    return ;  }  $.util.addEvent( num , 'keypress' , function( e ){    var e = e || window.event ;    if(e.keyCode >= 48 && e.keyCode <= 57){alert()      return true;    }    return false;  });};roc.util.addEvent = function(elem, type, fn, useCapture) {  if(elem.addEventListener) { //DOM2.0    elem.addEventListener(type, fn, useCapture);    return true;  } else if(elem.attachEvent) { //IE5+    elem.attachEvent('on' + type, fn);    return true;  } else { //DOM 0    elem['on' + type] = fn;  }};roc.config = roc.config || {};roc.config = roc.config ||{  BLINK_DELAY:3000,  SELECT_DELAY:1000}roc.search = roc.search || {}; roc.search.getValues = function( e ){    //批量獲取表單值,用于插入    var $ = roc,      allIsNull = true,    wrapStr = function( num ){      return '"'+ num + '"';    },    vals =[];  for(var i in e[0]){    var v =$.dom.trim($.dom.id( e[0][i] ).value + '');    if( v != ''){      allIsNull = false;    }    switch( e[1][i] ){      case 'date':      case 'text':        vals.push( wrapStr(v) );        break;      case 'num':        vals.push( v );        break;      default:break;    }  }  if(allIsNull){    return false;  }  return vals.join(',');};roc.search.getSelSql = function(){  //組裝搜索sql  var $ = roc,    addr = $.dom.trim($.dom.id("s_uaddr").value),    phone = $.dom.trim($.dom.id("s_uphone").value),    style = $.dom.trim($.dom.id("s_style").value),    year = $.dom.trim($.dom.id("s_year").value ),    month = $.dom.trim($.dom.id("s_month").value),    date = $.dom.trim($.dom.id("s_date").value),    datetype = $.dom.trim($.dom.id("s_datetype").value),    mysql = 'select * from inslist where 1=1 ',    datetypeName = datetype == 0 ? 'selltime':'addtime';  if( addr != ''){    mysql += ' and uaddr like "%' + addr + '%"';    }  if( phone != ''){    mysql += ' and uphone ="' + phone + '"';  }  if( style != ''){    mysql += ' and typeid = ' + style + '';  }  if( year !=''){    mysql += ' and year(' + datetypeName + ') = ' + year + '';  }  if( month !=''){    mysql += ' and month(' + datetypeName + ') = ' + month + '';  }  if( date !=''){    mysql += ' and date(' + datetypeName + ') = ' + date + '';  }  return mysql;};//搜索roc.search.seeking = function(){  if( !roc.search.getLock()){return;}  var $ = roc ,    mySql = $.search.getSelSql();    html = $.search.getSel( mySql);  $.search.setLock(false);  $.dom.id("searchResult").innerHTML = html;  $.util.resultBlink("查詢完畢");//閃爍};roc.search.getSel = function( sqlStr ){  //查詢  var $ = roc,    rs = $.db.getRs( sqlStr ),    filtRs = function ( str ){//處理字段      return ( str + '' ) == 'null' ? '':str;  },  num = 1;  total_receive = 0,  total_prize = 0,  html = "<table class='list' id='memoryDetails'>"      + "<colgroup>"      + "<col class='pid' />"      + "<col class='uaddr' />"      + "<col class='phone' />"      + "<col class='number'/>"      + "<col class='money' span='3'/>"      + "<col class='number' />"      + "<col class='phone' />"      + "<col class='number' />"      + "<col class='date' />"      + "<col class='date' />"      + "</colgroup>"      + "<tr class='secondRow doNotFilter'>"      + " <th class='pid'> 序號 </th>"      + " <th class='uaddr'> 用戶地址 </th>"      + " <th class='phone'> 用戶電話 </th>"      + " <th class='number'> 型號 </th>"      + " <th class='money'> 代收款 </th>"      + " <th class='money'> 貨款 </th>"      + " <th class='money'> 余額 </th>"      + " <th class='number'> 安裝人 </th>"      + " <th class='phone'> 銷售電話 </th>"      + " <th class='number'> 備注 </th>"      + " <th class='date'> 銷售日期 </th>"      + " <th class='date'> 記錄時間 </th>"      + "</tr>";  while(!rs.EOF)   {    var id   = num ,//filtRs(rs.Fields("id") ),    uaddr    = filtRs(rs.Fields("uaddr") ),    uphone   = filtRs(rs.Fields("uphone") ),    typeid   = filtRs(rs.Fields("typeid") ),    received  = filtRs(rs.Fields("received") ),    prize    = filtRs(rs.Fields("prize") ),    unreceived = filtRs(rs.Fields("unreceived") ),    installerid = filtRs(rs.Fields("installerid") ),    sellerid  = filtRs(rs.Fields("sellerid") ),    remark   = filtRs(rs.Fields("remark") ),    selltime  = $.date.format(filtRs(rs.Fields("selltime") )),    addtime   = $.date.format(filtRs(rs.Fields("addtime") ) );    html += "<tr jsselect='browzr_data'>"    +"<td class='pid'>" + id + "</td>"    +"<td class='uaddr'>" + uaddr + "</td>"    +"<td class='phone'>" + uphone + "</td>"    +"<td class='number'>" + typeid + "</td>"    +"<td class='money'>" + received + "</td>"    +"<td class='money'>" + prize + "</td>"    +"<td class='money'>" + unreceived + "</td>"    +"<td class='number'>" + installerid + "</td>"    +"<td class='phone'>" + sellerid + "</td>"    +"<td class='number'>" + remark + "</td>"    +"<td class='date'>" + selltime + "</td>"    +"<td class='date'>" + addtime + "</td>"    +"</tr>";    //統計項    total_receive += received,    total_prize += prize,    num++;    rs.moveNext();  }   html = html   +"<tr class='total doNotFilter'>"  +"<td class='pid'></td>"  +"<td class='uaddr'>Σ </td>"  +"<td class='number'></td>"  +"<td class='number'></td>"  +"<td class='number'>" + total_receive +"</td>"  +"<td class='number'>" + total_prize +"</td>"  +"<td class='number'>" + (total_prize - total_receive ) +"</td>"  +"<td class='number'></td>"  +"<td class='number'></td>"  +"<td class='number'></td>"  +"<td class='date'></td>"  +"<td class='date'></td>"  +"</table>";  $.db.closeRs(rs);  $.db.closeConn();   return html;};roc.search.getLock = function(){  //查詢鎖  if( typeof roc.search.searchLock == 'undefined' ){    roc.search.setLock(false);  }  return roc.search.searchLock;};roc.search.setLock = function( key ){  roc.search.searchLock = key;};//[[id],[type]]roc.search.addEls = [[        "uaddr",        "uphone",        "typeid",        "received",        "prize",        "unreceived",        "installerid",        "sellerid",        "remark",        "selltime"        ],[        'text',        'text',        'num',        'num',        'num',        'num',        'num',        'num',        'text',        'date'        ]];roc.search.insert = function(){  //插入安裝單記錄  var $ = roc,    getV = $.search.getValues( $.search.addEls );  if(!getV){    $.util.loger('pop','請填寫信息后再保存!');    return;   }  var sqlStr = 'insert into inslist (uaddr,uphone,typeid,received,prize,unreceived,installerid,sellerid,remark,selltime) values ('+ getV +')';  $.db.execute( sqlStr );  $.util.resultBlink('保存安裝單成功');};/*顯示與隱藏*/roc.dom.switchDiv = function( objDiv){  var $ = roc ,    cookieName = objDiv.id + 'cookie';  if( objDiv.style.display =='' || objDiv.style.display =='none' ){    $.dom.show( objDiv );    $.cookie.set(cookieName,0,9999999);  }else{     $.dom.hide( objDiv );    $.cookie.set(cookieName,1,9999999);  }};//貨物型號操作roc.tstyle = roc.tstyle || {};roc.tstyle.els = [          ['tname','tprize','tdesc'],          ['text','text','text']        ];roc.tstyle.insert = function(){  //插入記錄  var $ = roc,    getV = $.search.getValues( $.tstyle.els );  if( !getV ){    $.util.loger('pop','請填寫信息后再保存!');    return;   }  var sqlStr = 'insert into type ( tname , tprize , tdesc ) values ('+ getV +')';  //$.util.loger('pop',sqlStr);  $.db.execute( sqlStr );  $.util.resultBlink('保存成功!');  $.util.flushInput($.tstyle.els);};roc.util.flushInput = function( els ){  var $ = roc ;  for(var i = 0 ; i < els.length ; i ++){    var e = $.dom.id(els[i]+'');    /* if(e.tagName == 'input' && e.type =='text'){*/      e.value = '';    /*}*/  }};//type{id,tname,tprize}roc.tstyle.getStyle = function( optId ){  //獲取類型列表  var $ = roc ,    mySql = 'select * from type where isdel = 0 ',    rs = $.db.getRs( mySql ),    filtRs = function ( str ){//處理字段      return (str+'')=='null' ? '':str;  },  myOpt = $.dom.id( optId ),  optIndex = 1;  while(! rs.EOF ){    var id = filtRs(rs.Fields('id')),      prize = filtRs(rs.Fields('tprize')),      name = filtRs(rs.Fields('tname'));      desc = filtRs(rs.Fields('tdesc'));    myOpt.options[optIndex] = new Option( name , id );    myOpt.options[optIndex].title = '價格:' + prize + ' | 描述:' + desc;    optIndex++;    rs.moveNext();  }  $.db.closeRs(rs);  $.db.closeConn(); };;(function(){  var $ = roc ;  $.dom.id("save").onclick = function(){    //保存    $.search.insert();  }  $.dom.id("searchBtn").onclick = function(){    //提檢    $.search.seeking();  }  //初始化查詢安裝單 年  for(var i = 0 ; i <= 10 ; i++ ){    $.dom.id("s_year").options[i] = new Option(2010 + i , 2010 + i );    if( 2010+i+'' == (new Date()).getYear() ){      $.dom.id("s_year").options[i].selected = true;    }  }  //初始化查詢安裝單月份  for(var i = 1 ; i <= 12 ; i++ ){    $.dom.id("s_month").options[i] = new Option(i,i);  }  //提檢條件字段id 修改觸發查詢  $.dom.s_fields = ["s_uaddr","s_uphone","s_style","s_datetype",'s_year','s_month','s_date'];  for(var i = 0 ; i < $.dom.s_fields.length ; i ++){    var f = $.dom.s_fields[i];    $.dom.id(f).onpropertychange = function(){      if(event.propertyName == 'value'){        $.search.setLock(true);        if($.search.t){          clearTimeout($.search.t);        }        $.search.t = setTimeout(function(){          $.search.seeking();        },$.config.SELECT_DELAY);      }    }    $.dom.id(f).onfocus = function(){      $.dom.addClass(this,"focusit");    };    $.dom.id(f).onblur = function(){      $.dom.removeClass(this,"focusit");    };  }  $.dom.id('saveType').onclick = function(){    //貨物類型    $.tstyle.insert();  };  //取出類型列表  $.tstyle.getStyle('typeid');  $.tstyle.getStyle('s_style');/* //$.dom.id("s_uaddr").onkeyup = $.dom.id("s_uphone").onkeyup = $.dom.id("s_style").onkeyup = function(){  $.dom.id("s_uaddr").onblur = $.dom.id("s_uphone").onblur = $.dom.id("s_style").onblur = function(){    $.dom.removeClass(this,"focusit");  }  $.dom.id("s_uaddr").onfocus = $.dom.id("s_uphone").onfocus = $.dom.id("s_style").onfocus = function(){    $.dom.addClass(this,"focusit");  }*/  //導航樣式切換  for(var i = 0 ; i < $.search.addEls.length ; i++ ){    var curObj = $.dom.id($.search.addEls[0][i]+'');    curObj.onfocus = function(){      $.dom.addClass(this,'focusit');    }    curObj.onblur = function(){      $.dom.removeClass(this,'focusit');    }  }  //添加導航點擊事件  var lis = $.dom.tagName('li',$.dom.id("ulNav"));  for(var i = 0 ; i < lis.length ; i ++ ){    $.dom.hide( $.dom.id(lis[i].id + 'Div'));    lis[i].onclick = function(){    for(var n = 0 ; n < lis.length ; n ++ ){      $.dom.removeClass(lis[n],'click');      $.dom.hide( $.dom.id(lis[n].id + 'Div'));    }    $.dom.show( $.dom.id(this.id + "Div"));    $.dom.addClass(this,"click");    $.cookie.set('showWhichDiv', this.id);  }  }  //默認的載入顯示頁面  var showWhichDiv = $.cookie.get("showWhichDiv") || "searchList";  $.dom.addClass($.dom.id(showWhichDiv),"click");  $.dom.show($.dom.id(showWhichDiv + 'Div'));  //日期控件,感謝此控件開發者的分享,祝你有個好女朋友!  J('#selltime').calendar({ format:'yyyy-MM-dd HH:mm:ss' });  var numFields = ['s_uphone','s_date','uphone','received','prize','unreceived','installerid'];  for( var i = 0 ; i < numFields.length ; i ++ ){    $.util.onlyInputNumber( numFields[i] );  }})();

希望本文所述對大家的javascript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产成人亚洲综合91| 日韩精品一二三四区| 欧美在线视频免费播放| 97在线免费观看视频| 欧美制服第一页| 色综合影院在线| 久久久综合免费视频| 日韩欧美亚洲范冰冰与中字| 久久视频这里只有精品| 国产精品亚洲精品| 成人妇女淫片aaaa视频| 国产激情视频一区| 国产亚洲精品久久久| 91久久精品美女| 久久99精品久久久久久噜噜| 久久精品久久久久电影| 九色成人免费视频| 久久91亚洲人成电影网站| 一本色道久久88精品综合| 日韩最新免费不卡| 91精品国产综合久久香蕉的用户体验| 亚洲影院在线看| 国产精品久久久久久网站| 国产精品久久久久999| 日韩大陆欧美高清视频区| 欧美激情一级精品国产| 久久精品中文字幕一区| 欧美日韩另类字幕中文| 日韩色av导航| 亚洲激情在线观看视频免费| 国产91精品久久久久久| 国产精品扒开腿做爽爽爽男男| 日韩在线激情视频| 亚洲国产另类久久精品| 国产97色在线| 国模极品一区二区三区| 欧美中在线观看| 欧美激情xxxxx| 国产精品久久一区| 国产成人黄色av| 青青久久av北条麻妃海外网| 日韩精品视频免费在线观看| 欧美制服第一页| 亚洲小视频在线观看| 欧美wwwxxxx| 九九热精品视频国产| 91免费观看网站| 久久久免费精品视频| 久久久女人电视剧免费播放下载| 中日韩午夜理伦电影免费| 午夜精品久久久99热福利| 亚洲精品日韩丝袜精品| 亚洲精品午夜精品| 欧美大胆a视频| 久久久久久尹人网香蕉| 亚洲天堂一区二区三区| 欧美激情精品久久久久久蜜臀| 久久久久亚洲精品国产| 欧美色另类天堂2015| 久久人人爽人人爽人人片av高请| 欧美日韩亚洲系列| 久热在线中文字幕色999舞| 91免费在线视频| 国产精品爽爽ⅴa在线观看| 欧美激情日韩图片| 在线a欧美视频| 91久久国产精品91久久性色| 欧美亚洲午夜视频在线观看| 亚洲成人教育av| 午夜精品美女自拍福到在线| 欧美大胆a视频| 久久久国产精彩视频美女艺术照福利| 91麻豆国产语对白在线观看| 国产亚洲欧美日韩一区二区| 亚洲va久久久噜噜噜久久天堂| 国产精品黄色影片导航在线观看| 日韩成人在线电影网| 色妞色视频一区二区三区四区| 日韩视频中文字幕| 久久久国产精品一区| 91国产高清在线| 欧美成人四级hd版| 久久久久久有精品国产| 久久频这里精品99香蕉| 日本亚洲欧美成人| 国产成人精品一区| 亚洲综合中文字幕68页| 久久精品久久久久久国产 免费| 欧美精品18videos性欧美| 91av免费观看91av精品在线| 欧美激情小视频| 国产一区二区在线免费视频| 欧美日韩国产精品专区| 久久国内精品一国内精品| 国产精品伦子伦免费视频| 日本一区二区在线免费播放| 不卡av在线网站| 成人女保姆的销魂服务| 成人情趣片在线观看免费| 日韩国产精品亚洲а∨天堂免| 成人在线观看视频网站| 精品毛片网大全| 91av视频在线免费观看| 精品久久久视频| 亚洲网站在线观看| 久久精品中文字幕电影| 日韩中文有码在线视频| 欧美精品日韩www.p站| 欧美性高潮床叫视频| 欧美激情网友自拍| 久久久久久久成人| 不卡av电影院| 亚洲激情小视频| 欧美激情亚洲另类| 91九色国产视频| 夜夜嗨av色综合久久久综合网| 国产一区二区三区高清在线观看| 狠狠色噜噜狠狠狠狠97| 亚洲精品成人网| 欧美日本啪啪无遮挡网站| 国产精品电影网| 在线观看日韩av| 伊人久久大香线蕉av一区二区| 国产日韩专区在线| 欧美另类在线播放| 国产亚洲免费的视频看| 色av吧综合网| 成人黄色免费片| 欧美在线激情网| 久久精品一本久久99精品| 国产精品白丝av嫩草影院| 国产精品免费电影| 夜夜嗨av一区二区三区免费区| 亚洲国产天堂网精品网站| 久久这里有精品| 国产成人在线视频| 一区二区亚洲欧洲国产日韩| 久久久久久高潮国产精品视| 在线观看日韩欧美| 久久九九亚洲综合| 久久精品久久久久久| 久久久91精品国产| 韩日欧美一区二区| 91精品视频在线免费观看| 91久久国产婷婷一区二区| 乱亲女秽乱长久久久| 亚洲人成啪啪网站| 国产精品∨欧美精品v日韩精品| 欧美精品video| 欧美另类99xxxxx| 亚洲欧美中文日韩在线v日本| 欧美在线视频在线播放完整版免费观看| 亚洲欧美中文日韩v在线观看| 久久99精品久久久久久青青91| 91久久综合亚洲鲁鲁五月天| 亚洲福利视频久久| 国内精品久久久久久久| 91欧美精品午夜性色福利在线| 国a精品视频大全| 欧美日韩加勒比精品一区| 欧美日韩在线第一页| 91探花福利精品国产自产在线| 亚洲第一视频在线观看| 97精品伊人久久久大香线蕉|