2012-03-28 56 views
0

我已經創建了一個表單,以至於我從數據庫加載了幾個問題,問題在不同的頁面上按類別加載,現在我已經不想檢查所有的問題了單選按鈕有一個值,即它們不應該爲空(未選中狀態)。

所以,如果單選按鈕都被選中,那麼我可以繼續使用的問題,下一個類別下一個頁面,

Q)如何我怎麼能檢查單選按鈕的狀態,因爲問題是由數據庫,並在未來的加載在Y類別中可以是N個問題。檢查單選按鈕的動態形式

+0

所以,你是從數據庫動態生成單選按鈕,並且你想確保每個單選按鈕都有一個值?如果它沒有價值,會發生什麼? – 2012-03-28 17:12:10

+0

如果它沒有值,那麼用戶不能進入下一頁 – 2012-03-28 17:17:10

+1

而不是動態創建單選按鈕,而是考慮使用'RadioButtonList'來代替,並將其綁定到結果集? – 2012-03-28 17:19:30

回答

1

如果你動態生成單選按鈕,並想要驗證它們都有價值,你應該在容器包裝像PanelPlaceHolder

<asp:PlaceHolder ID="PlaceHolder1" runat="server"> 
    <!-- put the dynamically generated radio buttons here --> 
</asp:PlaceHolder> 

通過把它們放在一個容器中,你可以這樣做:

foreach (RadioButton radio in PlaceHolder1.Controls.OfType<RadioButton>()) 
{ 
    //set the enabled state based on whether a value is assigned 
    radio.Enabled = radio.Value.Length > 0; 
} 
+0

這幾乎奏效了,但現在缺少的東西是它自己抓取每個收音機,而不是通過組播。所以如果我有3個收音機用於同一個問題,很顯然只有1個可以選擇,但是這個功能會選擇1個,其他2個不選擇,所以它永遠不會讓我進入下一頁 – 2012-03-28 17:37:39

+0

謝謝,我我已經知道如何做到這一點,當我保存會話變量的答案,而不是丟失他們我必須計數器,counter1在這個頁面和counter2我有問題的數量,我用'counter2 + 1'當我保存答案,如果它不是空的,我忘記了我有這個,所以我基本上檢查它,所以我沒有必要做任何JavaScript或東西,無論如何 – 2012-03-29 17:29:06