在 Repeater 中绑定了 input 控件, 在 Repeater1_ItemDataBound 事件中,如何设置该 input 的 value 值呢?
HTML CODE
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<ItemTemplate>
<tr>
<td>
<input type="text" id="<%# Eval("ColumnName") %>"></td>
</tr>
</ItemTemplate>
</asp:Repeater>
C# CODE
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
// 将 input 的 value 值设置为我想要的,例如:ABC
}
------解决方案--------------------input 控件 加上 runet="server"
可以在后台 用 Repeater1.Items[i].FindControl("id名称") 获取
------解决方案--------------------为什么不在前后就像给ID一样的方法邦值呢
------解决方案--------------------Repeater1 >> Item >> input >> value
从外往里
------解决方案--------------------<input type="text" id=" <%# Eval("ColumnName") %>">
改为
<asp:Literal ID="litInp" runat="server" />
C# CODE
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Literal litinp = (Literal)e.Item.FindControl("litInp");
litinp.Text = "<input type=text id=abc />";
}
------解决方案--------------------1楼和4楼都对!
------解决方案--------------------既然都用Eval方式了,为什么还要在ItemDataBound里赋值?