我正在尝试从代码后面动态添加单选按钮。我通过调用以下代码添加它:
private void AddRadioButtonList(string id, bool isBool)
{
RadioButtonList radioButtonList = new RadioButtonList();
radioButtonList.ID = id;
form1.Controls.Add(radioButtonList);
if (isBool) { GenerteTrueFalseListItems(radioButtonList); }
form1.Controls.Add(new LiteralControl("<br />"));
}
当isBool
为真时,将调用以下函数:
private void GenerteTrueFalseListItems(RadioButtonList item)
{
item.Items.Clear();
item.Items.Add(new ListItem("True", "true"));
item.Items.Add(new ListItem("False", "false"));
}
但页面上的单选按钮缺少正确的ID,我只能从整页中选择一个单选按钮。
我希望单选按钮的ID为“true”或“false”。
为了正确呈现单选按钮,我该怎么做?
答案 0 :(得分:1)
value
元素的input
将为true
或false
,但ASP.NET会根据您为RadioButtonList提供的ID自动生成ID(不是ListItem)然后是下划线,然后是每个RadioButtonList选项的序号。 (将根据ClientIDMode
设置而有所不同。
因此,如果您将一个ID test
分配给RadioButtonList,那么ASP.NET为每个input
生成的ListItem
元素将具有ID test_1
,{{ 1}},test_2
等等。
如果要更改为RadioButtons而不是RadioButtonList,则每个RadioButton都将具有您指定的ID(取决于test_3
)。