repeater控件(repeater功能)
JS如何得到Repeater控件里面input控件的ID
你要想获得Repeater里服务器控件(runat="server")的值?必须先知道Repeater里服务器控件ID的命名方式?如果你的页面里的数据只是只读数据可以采用“pwroselove”提供的方法?去掉runat="server"?自己为控件的ID命名?如果你需要和后台交互?就可以用下面的方法
首先Repeater里服务器控件ID的命名方式是?Repeater.ClientID_ctl行号_控件名?行号是从00开始的两位数00?01?02...?如?Repeater1_ctl00_lblBegin?表示Repeater里第一行lblBegin的ID?给你写个例子你就明白了?代码如下
%@?Page?Language="C#"?%
%@?Import?Namespace="System.Data"?%
!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?";quot;
script?runat="server"
protected?void?Page_Load(object?sender,?EventArgs?e)
{
using?(DataTable?dataTable?=?new?DataTable())
{
dataTable.Columns.AddRange(new?DataColumn[]?{?new?DataColumn("Begin"),?new?DataColumn("Deadline")?});
dataTable.Rows.Add(new?object[]?{?"123",?"A"?});
dataTable.Rows.Add(new?object[]?{?"234",?"B"?});
dataTable.Rows.Add(new?object[]?{?"345",?"C"?});
Repeater1.DataSource?=?dataTable;
Repeater1.DataBind();
}
}
/script
html?xmlns=";quot;
head?runat="server"
title/title
/head
body
form?id="form1"?runat="server"
div
asp:Repeater?ID="Repeater1"?runat="server"
ItemTemplate
input?id="lblBegin"?runat="server"?value='%#?Eval("Begin")%'?type="text"?/
input?id="lblDeadline"?runat="server"?value='%#?Eval("Deadline")%'?type="text"?/
br?/
br?/
/ItemTemplate
/asp:Repeater
/div
script?type="text/javascript"
var?repeaterId?=?'%=Repeater1.ClientID?%';//Repeater的客户端ID
var?rows?=?%=Repeater1.Items.Count%;//Repeater的行数
for?(var?i?=?0;?i??rows;?i++)?{
alert(document.getElementById(repeaterId?+?"_ctl"?+?getrownumber(i)?+?"_lblBegin").value);
alert(document.getElementById(repeaterId?+?"_ctl"?+?getrownumber(i)?+?"_lblDeadline").value);
}
function?getrownumber(i)?{
if?(i??10)?{
return?i;
}
else?{
return?'0'?+?i;
}
}
/script
/form
/body
/html
asp.net中怎么获取用户控件中Repeater控件里面的一个Label值
这种是按钮在repeater外的,这是获取每一个值
for (int i = 0; i Repeater1.Items.Count; i++)
{
Label h = (Label)Repeater1.Items[i].FindControl("Label1");
}
要是在按钮在repeater内的,在它的ItemCommand事件中写,这是repeater事件
protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
{
this.Lab.Text = e.CommandArgument.ToString();
}
这是repeater中单个按钮的事件
绑定你想获得的ID:CommandArgument='%#Eval("ID") %'
事件:OnCommand
public void LinkButton1_Check(object sender, CommandEventArgs e)
{
//获取ID
string ID= e.CommandArgument.ToString();
}
希望对你有帮助
c# asp.net 里面的Repeater控件绑定数据具体怎么用啊?
Repeater 跟其他绑定控件类似,比如DataList 但是不能像那些控件一样可视编辑模板。而必须在前台代码页内编辑模板。在代码Repeater/Repeater 中输入会自动提示常用的就是HeaderTemplate设置标题模板,ItemTemplate 设置内容模板。下面是我的一个例子。asp:Repeater ID="Repeater4" runat="server" ItemTemplate table width="692" height="159" border="0" cellpadding="0" cellspacing="0" tr td /td /tr tr /table /ItemTemplate/asp:Repeater 至于后台绑定数据跟其他都是一样的了。
Repeater 控件里怎么实现判断?
这个可以使用 三元运算符 ?:
%# Eval("Url").Tostring()==""?Eval("Url").ToString():Eval("Url").Tostring() %
意识 就是 Eval("Url").Tostring()=="" 为 True 执行 Eval("Url").ToString() 为false 执行 后面的