給Repeater控制元件裡新增序號的5種方法

SQL資料庫發表於2015-06-01

方法一:
利用Container.ItemIndex屬性,程式碼如下:

<Itemtemplate >
<%# Container.ItemIndex + 1% >
</Itemtemplate >

方法二:
利用Repeater的Items.Count屬性,程式碼如下:

<Itemtemplate >
<%# this.Repeater.Items.Count + 1% >
</Itemtemplate >

方法三:
利用JS在前臺給一個Label標籤賦值,程式碼如下:

在.aspx中新增一個Label控制元件,用來顯示序號。

<Label ID="label" runat="server" ></Label >

JS程式碼:

<body onload="show()" >
<Script Language="javascript" >
function show()
{
var bj = document.all.tags("Label經解釋後生成的Html標籤");
for (i=0;i<obj.length;i++)
{
document.all["Label經解釋後生成的Html標籤"][i].innerHTML=i+1;
}
}
</script >

該方法需注意的地方比較多,不推薦使用。
 
 方法四:在後臺中實現,程式碼如下:
在.aspx裡新增一個Label控制元件

<asp:Label id="Label1" runat="server" ></asp:Label >

在.cs裡新增程式碼:

void InitializeComponent()
{   
   this.Repeater1.ItemDataBound += new System.Web.UI.WebControls.RepeaterItemEventHandler(this.Repeater1_ItemDataBound);
   this.Load += new System.EventHandler(this.Page_Load);
}
void Repeater1_ItemDataBound(object source, System.Web.UI.WebControls.RepeaterItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
   {
    ((Label)e.Item.FindControl("Label1")).Text = Convert.ToString(e.Item.ItemIndex + 1);
   }
}


方法五:為Repeater控制元件新增連續的編號,翻頁後序號接前上一頁的序號,程式碼如下:

<%# Container.ItemIndex + 1 + (this.AspNetPager.CurrentPageIndex -1)*每頁的資料數量 >

相關文章