2013-10-02 142 views
1

我有一個網頁,其中checkboxlist是從XML文件動態創建的。識別動態創建的複選框

的XML看起來是這樣的:

<properties> 
    <property id="abc" value="150" text="mumbo jumbo" /> 
    <property id="def" value="150" text="more mumbo jumbo" /> 

我創造這樣我的CheckBoxList:

if (checkBoxes.Count > 0) 
{ 
    chkServices.DataSource = checkBoxes; 
    chkServices.DataTextField = "text"; 
    chkServices.DataValueField = "value"; 
    chkServices.DataBind(); 
} 

我想獲得的ID與個人複選框會,但似乎無法想辦法。

任何想法?

+0

什麼是複選框,你能看到ID那裏呈現的HTML? – nrsharma

+0

哦,我的意思是來自xml文件的id,比如「abc」..等等。我想要一種方法讓這個掛在元素上..如果可能的話 – elwis

回答

1

像這樣的DataBind後:

foreach (ListItem c in chkServices.Items) 
{ 
    c.Attributes.Add("ID", "abc"); 
} 
+0

可能會工作,如果我可以保留一些從xml的ID的順序,並將它們匹配到列表中的正確組件,感謝 – elwis

+0

應該很容易實現。 'for(int i = 0; i mortdale

+0

是的,除了.net喜歡類型爲「MainContent_chkServices_0」的奇怪ID以至於它增加了一個標籤與我的ID,而不是交換複選框之一。那麼,至少他們在那裏,謝謝 – elwis

1

如果你創建一個CheckboxList控件並給它一個「test」的ID,那麼它應該給列表中的複選框一個ID,格式爲parentid + _ + itemindex,所以「test_0」,「test_1」,「 test_2「等

只要記住要獲取每個複選框的ID用於在JavaScript中使用它的目的,您可能需要使用CheckboxList.ClientID + _ + itemindex。

+0

好的解決方案,但是我需要個人ID從xml文件 – elwis