0
我有一個datagrid
內的單選按鈕,它位於repeater
內。有4 radiobuttons
是爲repeater
內的每個「重複」創建的,我希望選擇這4箇中的一個爲必填項。我已經將這些radiobuttons
放在同一個GroupName
之內,因此只能選擇其中的1個。要求做一個單選按鈕選擇
它們不在radiobuttonlist中,我不想將它放在單選按鈕列表中。
我有一個datagrid
內的單選按鈕,它位於repeater
內。有4 radiobuttons
是爲repeater
內的每個「重複」創建的,我希望選擇這4箇中的一個爲必填項。我已經將這些radiobuttons
放在同一個GroupName
之內,因此只能選擇其中的1個。要求做一個單選按鈕選擇
它們不在radiobuttonlist中,我不想將它放在單選按鈕列表中。
既然你有他們在相同的組名稱,你可以做一個自定義的驗證。
<asp:CustomValidator ID="myValidator" runat="server" ErrorMessage="you must select one" onservervalidate="myValidator_serverValidate" />
然後在後面的代碼,
protected void myValidator_serverValidate(object sender, ServerValidateEventArgs e)
{
bool isSelected = false;
foreach (Control control in yourForm.Controls)
{
if (control == RadioButton)
{
RadioButton rb = (RadioButton)control;
if (rb.GroupName == "myGroup" && rb.Checked)
{
isSelected = true;
}
}
}
e.IsValid = isSelected;
}
這可以用任何數量的方式來完成,或者通過驗證或者乾脆檢查,看是否有單選按鈕已經做出選擇。你有什麼嘗試? – Spacemancraig 2012-07-24 19:00:27
我還沒有嘗試過任何東西,我知道驗證器確實存在,但我不知道如何驗證它們,因爲它們不是相同的控件 – 2012-07-24 19:02:25