要求: RADIOBUTTON 的ID 是变量!
或者可以这样: 如果我在后台改变RadiOButton 的ID,但是在页面刷新的时候,RadioButton的ID 是我在后台更改的ID! <asp:repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
<tr>
<td><b>Company</b></td>
<td><b>Symbol</b></td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "Name") %>
</td>
<td>
<ASP:Button Text="565656" runat="server" ID="Button1" /></td>
<td>
<asp:RadioButton id="ra" runat="server" AutoPostBack="true"></asp:RadioButton>
</td>
</tr>
<tr>
<td>
<ASP:Button Text="1234" runat="server" ID="Button2" /></td>
</td>
</tr>
</table>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:repeater>
或者可以这样: 如果我在后台改变RadiOButton 的ID,但是在页面刷新的时候,RadioButton的ID 是我在后台更改的ID! <asp:repeater id="Repeater1" runat="server">
<HeaderTemplate>
<table border="1">
<tr>
<td><b>Company</b></td>
<td><b>Symbol</b></td>
</tr>
</table>
</HeaderTemplate>
<ItemTemplate>
<table>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "Name") %>
</td>
<td>
<ASP:Button Text="565656" runat="server" ID="Button1" /></td>
<td>
<asp:RadioButton id="ra" runat="server" AutoPostBack="true"></asp:RadioButton>
</td>
</tr>
<tr>
<td>
<ASP:Button Text="1234" runat="server" ID="Button2" /></td>
</td>
</tr>
</table>
</ItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:repeater>
或者:前台,在html代码中,把id="ra"去掉
同样,启动页面时,用js生成id
//其中temp是后台public的变量或者绑定到字段
<asp:RadioButton id='<%# DataBinder.Eval(Container.DataItem, "Name") %>' runat="server" AutoPostBack="true"></asp:RadioButton>
错误信息: '<%=temp%>' 是无效的标识名。
private void Repeater1_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
{
if(e.Item.ItemIndex>-1)
{
RadioButton rb = e.Item.Controls[3] as RadioButton;
rb.ID = "abc";
}
}
{
// 在此处放置用户代码以初始化页面
if(!Page.IsPostBack)
{
RadId.ID = "RadMyId";
Page.Response.Write(RadId.ID.ToString());
}
}
好像这样就可以了吧!