CHeckboxList Динамическое обновление и стилизация - PullRequest
1 голос
/ 19 января 2010

Я добавляю элементы динамически, когда в GridView выбрана строка.

1. How can i make the items added are selected by default - (solved) 
2. How can i avoid duplicates getting added to list 
3. How can i remove them from list when user un-checks them.

И я хочу изменить флажок с изображением, и я использую CSS, как показано ниже, но он не работает

.cbxCustom
{
...
}
.cbxCustom tr td checkbox
{
....
}

 <asp:CheckBoxList ID="cbl1" runat="server" AutoPostBack="true"
   OnSelectedIndexChanged="cbl1_OnSelectedIndexChange"     
   CssClass="cbxCustom">                                
 </asp:CheckBoxList>

1 Ответ

0 голосов
/ 21 января 2010

Дубликатов можно избежать, сохраняя ваши элементы в списке, и перед добавлением элемента проверьте, есть ли lst.Contains (itemName). Если это так, не добавляйте его.

Удалить их из списка немного сложнее, потому что это зависит от того, насколько глубоко вы хотите в него войти. Я предполагаю, что вы не хотите PostBack для каждого щелчка флажка. Если вам нужен PostBack, вам потребуется способ сериализации списка флажков и информации в элемент управления в ViewState. Поскольку вы динамически добавляете этот список в выделенный код, я бы порекомендовал невидимый литерал, задачей которого является хранение сериализованной строки, содержащей ваши данные.

Если вам НЕ нужен PostBack, вам нужно будет обработать значительное количество JavaScript, чтобы изменить InnerHTML таблицы, которая выводится CheckBoxList. Опять же, как и выше, я бы использовал Literal или некоторый управляемый ViewState невидимый элемент управления для сериализации состояния. В этом случае литерал не сработал бы, но мог бы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...