2012-03-02 150 views
0

我有一個datalist我有複選框,我選擇客戶端使用jquery的複選框,基於該複選框選擇我刪除該項目,少數項目不會被刪除,因爲有一個其他表中的實例,未刪除的項目我想將複選框顯示爲檢查和錯誤消息,表明所選項目不能刪除。如何在btn點擊刪除一些項目後再次複選複選框?

刪除項目後我得到未刪除的項目ID,但如何再次檢查基於該ID的複選框。

上刪除BTN

foreach (DataListItem dl in dltlist1.Items) 
     { 
      if ((((CheckBox)dl.FindControl("Chkbox")).Checked)) 
      { 
       ImageButton img = (dl.FindControl("btn1") as ImageButton); 
       string[] str = img.CommandArgument.ToString().Split(';'); 
       Id = Convert.ToInt32(str[0]); 
       IdList.Add(Id); 
      } 
     } 
List<Tuple<int, int>> x = objBAL.Delete(IdList); 
Tuple<int, int> temp = new Tuple<int, int>(item.Key, 1); // I am getting here non deleted key 

刪除項目後,我又結合了數據列表。

plz有人幫我怎麼做?

回答

0

重新綁定DataList後,您可以遍歷DataList項並將未刪除的鍵與DataKey相匹配,如果找到匹配項,則可以重新檢查複選框。

實施例:

  //here ArrayList contains the ids to match 
     ArrayList a=new ArrayList(); 
     a.Add(201105); 
     a.Add(201106); 
     //loop through the items in the datalist 
     for (int i = 0; i < DataList1.Items.Count;i++) 
     { 
      //check if the list contains the items 
      if (a.Contains(Convert.ToInt32(DataList1.DataKeys[i]))) 
      { 
       (DataList1.Items[i].FindControl("CheckBox1") as CheckBox).Checked = true; 
      } 
     } 

具有。載任何集合或通用的()方法將是理想的這一點。

希望這有助於。

相關問題