2013-11-01 31 views
0

我有一個窗體包含一個gridview和一個隱藏面板在一個updatepanel內。 當我點擊gridview標題時,我將使用ajax中的ModalPopupExtender來填充隱藏的面板並顯示用戶選擇的複選框列表,然後保存。複選框列表中選擇的項目不能在ClearPanel中清除

我遇到的問題是,checkboxlist中的選定項目無法清除。 例如,我選擇了第一項並點擊保存。之後,ModalPopupExtender將被關閉。如果我再次單擊gridview標題,當填充複選框列表時,先前選擇的第一個項目清楚地表明它未被選中。然後我從複選框列表中選擇第二項保存,但是這次系統會檢測到第一項仍然被選中。所以在第二次保存時,它會顯示我選擇了第一項和第二項。

我試圖循環所有項目並設置selected = false,但它沒有工作。我也嘗試了下面的代碼,但沒有運氣。請幫忙。

CheckBoxList.EnableViewState = false; CheckBoxList.ClearSelection();

回答

0
<script language="javascript"> 
    function checkListClear() { 
     var chk = document.getElementById('CheckBoxList1'); 
     var checkBoxArray = chk.getElementsByTagName('input'); 
     for (var i = 0; i < checkBoxArray.length; i++) 
       { 
        if (checkBoxArray[i].checked) {       
         checkBoxArray[i].checked = false; 
        } 
       } 
    } 
</script> 
+0

喜Nadee。我得到了下面的錯誤信息。 無法獲取屬性'getElementsByTagName'的值:對象爲空或未定義。 而我正在使用下面的代碼的JavaScript部分。 var chk = contentWindow.document.getElementById(「<%= cblStep.ClientID%>」); var checkBoxArray = chk.getElementsByTagName('input'); –

+0

你在IE中測試過這個嗎?在你改變腳本之後,它現在就開始了嗎? – Nadee

+0

嗨Nadee。我修改了代碼,併成爲這樣。 var chk = contentWindow.document.getElementById(「<%= cblStep.ClientID%>」); var checkBoxArray = chk.getElementsByTagName('input');對於(var i = 0; i

0

添加JavaScript函數的按鈕叫你點擊打開ModalPopupExtender 添加它的OnClientClick

相關問題