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

asp.net中repeater控件用法筆記
來源:易賢網 閱讀:914 次 日期:2015-01-19 13:28:11
溫馨提示:易賢網小編為您整理了“asp.net中repeater控件用法筆記”,方便廣大網友查閱!

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

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

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

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

headertemplate: 建立如何顯示標題。

footertemplate: 建立如何顯示頁腳。

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

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

對于處理一個數據源,repeater控件具有與datagrid與datalist相同的屬性:

datamember:獲得或者設置與 repeater 控件綁定的相應datasource屬性的表格。

datasource:獲得或者設置為 repeater 顯示提供數據的數據源。

除此之外,還有一個items屬性,你可以通過這一屬性編程訪問repeater數據中單一選項。它返回一個repeateritemcollection對象,為一組repeateritem對象的集合,代表 repeater 數據的每一行。

asp.net web數據控件還有其它一個共性:它們都使用databind方法來生成用戶界面。調用這一方法可以返回并顯示數據(假設datasource和 datamember屬性設置正確)。在查看databind方法之前,我們先看看如何在一個web頁面中使用一個repeater控件。

使用repeater控件

使用repeater控件的第一步驟是決定我們將要使用的數據源和字段。例如,我們將要使用sql server northwind數據庫中的employees列表。web頁面將顯示職工的完整名字,地址,以及電話號碼。html將使用div標記,用 repeater 模板來分隔內容。下面是 web 頁面的 html 內容:

前臺代碼

代碼如下:

<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=轉到 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;//給分頁控件指定當前總數

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

pds.currentpageindex = anp.currentpageindex - 1;//確定當前頁數

rpt.datasource = pds;//綁定數據源

rpt.databind();

}

protected void aspnetpager1_pagechanging(object src, wuqi.webdiyer.pagechangingeventargs e)

{

aspnetpager1.currentpageindex = e.newpageindex;

bindpersondata();

}

例子

repeater控件動態添加、刪除一行

代碼如下:

<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;

// //審批用戶控件中保存發放的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); //獲取發放的資產號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>

資產類型

</th>

<th>

使用工位

</th>

<th>

申請數量

</th>

<th>

發放的資產號<font color=red>(資產管理員填寫)</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的數據源

/// </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數據默認加載

/// </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);

}

//為第一行加載一些數據

datarow row0 = dt.rows[0];

row0[guid] = guid.newguid();

row0[equrequestitemid] = ;

row0[equipmenttype] = ;

row0[station] = ;

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

row0[equipmentids] = ;

}

/// <summary>

/// 根據repeater相對應的列名,定義數據源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);

//首先,恢復數據源

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);

//首先,恢復數據源

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);//申請單的當前狀態

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);//是否為當前能做審批的人

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() == 資產管理員)

{

string reqnum = (e.item.findcontrol(txtreqequipmentnum) as textbox).text.trim();

txtequids.attributes.add(onclick, openwindow(' + txtequids.clientid + ',' + ddlequipmenttype_temp.selectedvalue + ',' + reqnum + '));

}

}

}

}

}

}

更多信息請查看IT技術專欄

更多信息請查看網頁制作
易賢網手機網站地址:asp.net中repeater控件用法筆記
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
亚洲一区二区成人| 久久精品人人| 欧美一区二区黄| 国产精品区免费视频| 亚洲女人天堂成人av在线| 国产精品麻豆成人av电影艾秋| 欧美视频中文字幕在线| 亚洲午夜免费视频| 国内精品视频一区| 国产精品播放| 日韩午夜精品视频| 国产精品videosex极品| 久久在线91| 国产精品99一区二区| 国产精品久久久久高潮| 国产精品va| 欧美久久精品午夜青青大伊人| 激情欧美日韩一区| 欧美亚洲免费| 国产精品免费久久久久久| 国产一区欧美| 在线高清一区| 欧美制服丝袜第一页| 欧美成人69av| 国产尤物精品| 精品99一区二区| 亚洲精品视频一区二区三区| 亚洲综合另类| 欧美午夜视频网站| 亚洲第一中文字幕| 欧美激情久久久| 亚洲精品国产精品国自产观看| 亚洲综合二区| 亚洲黄色有码视频| 亚洲精品婷婷| 一区二区三区在线高清| 国产精品美女在线观看| 欧美天堂亚洲电影院在线观看| 你懂的一区二区| 欧美激情中文字幕一区二区| 欧美成人四级电影| 国产精品美女久久久久久免费| 欧美日韩精品免费观看视频| 嫩草国产精品入口| 免费成人在线视频网站| 欧美视频精品在线| 国产欧美一区二区精品忘忧草 | 久久综合999| 欧美福利视频网站| 国产精品免费视频xxxx| 黄色成人av网站| 亚洲黄色在线| 午夜免费久久久久| 欧美激情国产高清| 国产午夜精品麻豆| 一本一本久久| 久久视频国产精品免费视频在线| 老司机午夜精品视频| 国产精品国色综合久久| 精品999久久久| 亚洲一区二区三区免费在线观看| 在线亚洲观看| 久久国产精品久久久久久| 欧美国产精品劲爆| 在线观看亚洲一区| 亚洲综合视频一区| 欧美体内she精视频| 亚洲精品国精品久久99热一| 久久精品二区| 亚洲国产高清一区二区三区| 裸体丰满少妇做受久久99精品| 欧美久久综合| 夜夜嗨一区二区三区| 嫩草影视亚洲| 夜夜嗨av一区二区三区| 欧美日韩伦理在线免费| 日韩视频亚洲视频| 欧美性片在线观看| 亚洲欧美在线观看| 永久免费精品影视网站| 国产婷婷成人久久av免费高清 | 国产精品久久久久三级| 99在线精品观看| 国产精品久在线观看| 久久成人人人人精品欧| 有坂深雪在线一区| 欧美日本精品在线| 久久久精品动漫| 一区二区国产日产| 国产亚洲精品久久久久动| 久久综合九色综合久99| 日韩亚洲欧美成人一区| 国产专区一区| 国产精品高潮呻吟久久av无限 | 亚洲黄色免费| 国产视频自拍一区| 欧美日本不卡| 久久综合一区| 欧美一区观看| 亚洲欧美美女| 亚洲一区二区欧美| 亚洲精品国产精品国自产观看| 国产日韩欧美在线播放| 欧美性开放视频| 欧美特黄a级高清免费大片a级| 老司机精品视频网站| 久久亚洲图片| 欧美成人精品h版在线观看| 久久免费99精品久久久久久| 羞羞视频在线观看欧美| 欧美一级在线亚洲天堂| 极品尤物av久久免费看| 国外视频精品毛片| 在线观看日韩专区| 亚洲精品久久久久| 亚洲欧美精品在线| 久久精品国产99国产精品| 久久香蕉国产线看观看av| 欧美sm视频| 国产精品视频网址| 亚洲国产视频一区二区| 正在播放日韩| 午夜精品亚洲一区二区三区嫩草| 亚洲制服av| 老司机aⅴ在线精品导航| 欧美日韩不卡| 激情国产一区二区| 亚洲一卡久久| 欧美激情精品久久久久久免费印度| 欧美视频中文在线看| 在线播放国产一区中文字幕剧情欧美 | 亚洲精品视频在线| 亚洲欧美视频在线观看视频| 午夜精品久久久99热福利| 今天的高清视频免费播放成人 | 免费观看日韩| 欧美二区在线观看| 国产欧美一区二区精品婷婷 | 午夜精品一区二区三区电影天堂| 国产一区二区剧情av在线| 国产私拍一区| 亚洲日本乱码在线观看| 午夜在线精品偷拍| 久久综合色88| 国产精品xvideos88| 亚洲国产成人久久综合一区| 日韩视频在线观看免费| 午夜免费电影一区在线观看 | 一本色道久久综合精品竹菊| 亚洲伊人一本大道中文字幕| 欧美大片一区二区三区| 国产综合一区二区| 新片速递亚洲合集欧美合集| 欧美高清视频| 国产在线观看精品一区二区三区| 亚洲三级免费| 欧美日产在线观看| 亚洲精品小视频| 欧美日韩免费观看一区三区 | 国产日韩在线看片| 午夜精品视频在线观看一区二区| 国产精品电影网站| 亚洲中字黄色| 久久综合伊人77777蜜臀| 国产一区二区三区在线观看视频 | 亚洲欧美电影院| 欧美色图天堂网| 99热在这里有精品免费| 久久香蕉国产线看观看av| 激情久久中文字幕| 美女精品自拍一二三四| 亚洲国产91精品在线观看| 欧美精品在线网站| 欧美在线综合视频| 亚洲国产第一| 欧美精品18| 亚洲一区二区三区在线视频| 欧美三级韩国三级日本三斤| 在线亚洲+欧美+日本专区| 国产精品一级二级三级| 欧美日韩国产三区| 亚洲综合丁香| 最新高清无码专区| 欧美日韩一区三区四区| 欧美影院久久久| 亚洲制服av| 91久久精品国产91性色| 国产精品一区二区久激情瑜伽| 亚洲国产欧美国产综合一区| 欧美性视频网站| 欧美国产欧美亚洲国产日韩mv天天看完整 | 亚洲午夜精品一区二区三区他趣 | 久久综合久色欧美综合狠狠| 99re成人精品视频| 在线观看日韩av先锋影音电影院| 中文日韩在线| 亚洲日韩中文字幕在线播放| 国产精品国产三级国产专播精品人| 欧美在线一二三四区| 亚洲中无吗在线|