2013-10-02 2 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(); 
} 

Я хотел бы получить идентификатор происходит с теми отдельными флажками, но не могу выясните это.

Любые идеи?

+0

что оказанная HTML для флажка, вы увидите идентификатор там? – nrsharma

+0

О, я имел в виду идентификатор из xml-файла, например «abc» .. и т. Д. Я хотел бы, чтобы этот элемент зависал к элементам. Если возможно – elwis

ответ

1

что-то вроде этого после DataBind:

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

может работать, если я могу сохранить некоторый порядок идентификаторов из xml и сопоставить их с нужным компонентом в списке, спасибо – elwis

+0

, которого должно быть легко достичь. 'for (int i = 0; i mortdale

+0

yep, за исключением того, что .net любит странные идентификаторы типа« MainContent_chkServices_0 »настолько, что добавляет тег с моим идентификатором вместо замены флажка. Ну, по крайней мере, они там, спасибо – elwis

1

Если вы создаете элемент управления CheckboxList и присваиваете ему идентификатор «test», тогда он должен предоставить флажки в списке идентификатора в формате parentid + _ + itemindex, поэтому «test_0», «test_1», test_2 "и т. д.

Просто помните, что для получения идентификатора для каждого флажка с целью его использования в javascript вам, вероятно, потребуется использовать CheckboxList.ClientID + _ + itemindex.

+0

Хорошее решение, но мне нужны отдельные идентификаторы от xml-файл – elwis

Смежные вопросы