2012-05-24 102 views
0

我有一個使用自定義驗證器(設置文本框邊框爲紅色)的Web窗體,我想檢查一組八個複選框中至少有一個已被選中可能也會將複選框的邊框設置爲紅色)。檢查是否至少有一個複選框被選中使用C#

由於我有一組if語句確保每個複選框都返回true或false,所以我想我可以添加一個計數器,並且如果計數器等於0以將Page.IsValid設置爲false。那麼這個想法不起作用。看起來不像你可以直接設置Page.IsValid。

然後我想將計數器值彈出到隱藏字段中並驗證,但我似乎無法獲得在隱藏字段上使用自定義驗證器的語法。

這是最好的解決方案是什麼?

感謝

+0

複選框是動態創建的還是固定數字? –

+0

爲什麼把你的複選框編入驗證器會使事情複雜化?就像你現在正在做的那樣,如果它不符合你的要求,只需退出並返回某種信息即可。或者,我錯過了什麼? – Jeremy

回答

3

這有什麼錯,你customvalidator?所有你需要的是像


protected void validateCheckBoxes_ServerValidate(object source, ServerValidateEventArgs args) 
{ 
    if(!CheckBox1.Checked && !CheckBox2.Checked && !CheckBox3.Checked) 
     args.IsValid = false; 
    else 
     args.IsValid = true; 
} 

的,如果說「如果沒有複選框被檢查,然後我們有一個問題。」

+0

很好的答案。我完全忘了CustomValidator。 – Jeremy

相關問題