2012-04-30 31 views
0

我正在使用C#.Net,並且已經接近完成編碼,使用OnDataBound作爲CheckBoxList來檢查Web表單中表單加載時的複選框。在Page_Load列表<>被填充,其中包含選中的值。然後我遍歷OnDataBound事件中的列表來檢查相應的框。這一切工作正常,如有必要,我可以提供額外的代碼。
一旦表單被加載,我可以看到一切都按預期進行檢查,但當我嘗試提交表單時,我的驗證表明該框未被檢查。CheckBoxList OnDataBound併爲表單提交設置複選框

我的驗證是在Javascript和使用.checked屬性,即if (cbx.checked) ... 在代碼隱藏我使用類似於以下檢查時適當值的循環:

foreach (ListItem item in cbList.Items) 
    { 
     if (Areas.Contains(item.ToString())) 
     { 
      item.Selected = true; 
     } 
    } 

似乎在.Selected和.checked屬性之間存在差異,還是比這更基本?

感謝您的幫助!

+0

你能告訴我一些關於你正在使用contains方法的「Areas」的代碼嗎?它是什麼類型? – broguyman

+1

是否在綁定複選框列表之前檢查'!IsPostBack',或者每次調用Page_Load'時都進行綁定? – lincolnk

回答

0

該功能是在提交服務器端還是客戶端方法時執行的?

我認爲發生的事情是Web頁面在提交時發回,所以在頁面重新加載之前,JavaScript不在圖片中。我不認爲在服務器端onSubmitEvent啓動之前,JavaScript會進行驗證,直到頁面重新加載。

相關問題