为什么我的RadioButtonList selectedValue为空?

时间:2011-08-30 06:53:41

标签: asp.net radio-button radiobuttonlist

我有一个RadioButtonList:

<asp:RadioButtonList ID="rblMedicationTime" runat="server"  onselectedindexchanged="rblMedicationTime_SelectedIndexChanged"  DataSourceID="dtsMedicationTime" DataTextField="LookupItem" DataValueField="Id"  AutoPostBack="true"></asp:RadioButtonList>

在页面加载时,我想从列表中选择一个单选按钮并设置其值,我已为此编写了这行代码:

rblMedicationTime.SelectedValue = clientMedicationSchedule.glTypeId.ToString();

RadioButtonList已成功填充,但无法选择该值。

当我调试代码时,

rblMedicationTime.SelectedValue总是“”。

4 个答案:

答案 0 :(得分:4)

你只需要使用

string myValue = myRadioButtonList.SelectedItem.Value

属性对象myRadioButtonList.SelectedItem包含单选按钮列表或DropDown列表中所选项目的所有值


以编程方式设置值,您只需要:

myRadioButtonList.SelectedIndex = 0;

您可以看到有几种方法可以获取但只有一种来设置:

  • myRadioButtonList.SelectedIndex - &gt;获取或设置
  • myRadioButtonList.SelectedValue - &gt;获取
  • myRadioButtonList.SelectedItem - &gt;获取

答案 1 :(得分:2)

您无法使用.SelectedValue设置所选单选按钮,只能使用.SelectedIndex

检查MSDN(在SelectedValue上显示“获取值”,在SelectedIndex中显示“获取或设置”)

答案 2 :(得分:1)

我认为问题在!IsPostBack

if (!IsPostBack)
{
string str = rblMedicationTime.SelectedValue;
}

首先你要检查!IspostBack

答案 3 :(得分:0)

你好朋友你的代码中还有其他问题,因为在我这方面运行良好。

rblMedicationTime.SelectedValue = clientMedicationSchedule.glTypeId.ToString();

你可以认为clientMedicationSchedule.glTypeId.ToString()包含或不包含值。 并在页面加载时,将选择代码放在if(!IsPostBack){}块上。