2014-03-07 57 views
0

我有ID为 “divBody”单选按钮列表innerHTML的问题

RadioButtonList rbl = new RadioButtonList(); 
divBody.InnerHtml += rbl; 

也RBL有项目也是如此,这是由

rbl.Items.Add(new ListItem { Text = "asd", Value = "1" }); 

添加一个div我不能初始化divBody.InnerHtml += rbl;因为该代码块,我看到这个输出在网站上:System.Web.UI.WebControls.ListItemCollection这应该很容易解决,但我不想从.aspx页面初始化radiobuttonlist,我想从.cs文件初始化此。

谢谢你的耐心等待。

+0

'divBody'是什么类? – Jumpei

+0

试'divBody.InnerHtml = RBI;' –

+0

divbody是一个div ID '的

' –

回答

1

从代码中添加控件后面你不需要用HTML玩只是将它加入

RadioButtonList rbl = new RadioButtonList(); 
rbl.Items.Add(new ListItem { Text = "asd", Value = "1" }); 
//also divbody should be a panel or div with runat = server 
divBody.Controls.Add(rbl); 
+0

是的,div与runat = server。但即使我在网页上编写'divBody.Controls.Add(rbl);',我仍然看不到'rbl'内容。 –

+0

@DemonD现在你是否获得控制 – Rex

+0

这是关于数据库后,尝试你的建议,无论你的答案帮了我很多,所以谢谢。 –

1

我希望这会有所帮助。

divBody.Controls.Add(rbl); 

当您使用InnerHtml,你必须设置文本形式呈现以下。

divBody.InnerHtml = "<input type=\"radio\" name=\"example\" value=\"foo\">"; 
0

既然你设置RUNAT =“服务器”为DIV属性。 Asp.Net会创建一个HtmlControl

在这里,你可以,而不是设置InnerHtml属性请执行以下操作:

divBody.Controls.Add(rbl); 

这将在应用程序生命周期的渲染阶段呈现单选按钮列表。

0

RadioButtonList是一个服务器控件,我们不能将它添加到div控件的InnerHTML中。可以按如下方式做到这一点:

RadioButtonList rbl = new RadioButtonList(); 
    rbl.Items.Add(new ListItem { Text = "asd", Value = "1" }); 
    divBody.Controls.Add(rbl); 
0
divBody.Controls.Add(rbl); 

解决我的问题,当然,该div必须具有runat=server

谢谢。