2009-04-21 4 views

ответ

35

Вы можете использовать управление System.Web.UI.WebControls.CheckBoxList или использовать управление System.Web.UI.WebControls.ListBox с параметром SelectionMode, установленным на Multiple.

+3

Я использовал CheckBoxList и TextBox. Отображение и скрытие его с помощью javascript и абсолютного позиционирования. –

+1

@ Джан Ремунда вы можете дать подробный javascript для этого? Буду премного благодарен! –

1

HTML не поддерживает выпадающий список с флажками. Вы можете иметь раскрывающийся список или список флажков. Вы могли бы подделать список dropdowncheckbox с помощью javascript и скрывать div, но это будет менее надежным, чем стандартный список флажков.

Есть, конечно, сторонние элементы управления, которые выглядят как раскрывающийся список флажков, но они используют трюки div.

вы также можете использовать двойной список, который обрабатывает множественный выбор путем перемещения элементов вперед и назад между двумя списками. Это имеет дополнительное преимущество, заключающееся в том, что вы легко можете сразу просмотреть все выбранные элементы, даже если список общих позиций длинный

(Представьте себе список всех городов мира, только с первым и последним)

1

Мне нравятся элементы управления Infragistics. WebDropDown имеет то, что вам нужно. Единственный недостаток - они могут быть немного интересными.

1

Проверьте это. Это бесплатно.

http://irfaann.blogspot.com/2009/07/ajax-based-multiselect-dropdown-control.html

НТН,

+1

Это сообщение было отмечено как спам и downvoted, но элемент управления кажется приятным, и он свободен, поэтому он получает мой верхний знак. Возможно, irfan может предоставить вам бесплатную техническую поддержку в обмен на ссылку. :) –

+0

Согласовано. Вероятно, это было заблокировано фильтром websense многих peope, что является такой глупой вещью, когда приходится беспокоиться о моем времени, когда я могу решить важные проблемы. –

27

jQuery Dropdown Check List может быть использован для преобразования регулярного множественного выбора элемента HTML в список выпадающей галочки, она работает на стороне клиента, так может быть использован с любой серверной стороной технологией:

alt text http://dropdown-check-list.googlecode.com/svn/trunk/doc/demo.png

+1

Я думаю, что это решение - именно то, что задал вопрос! Очень прочная альтернатива! –

+6

Но это зависит от структуры jQuery. –

+0

именно то, что я искал, большое спасибо –

0

Вот классный веб-элемент управления ASP.NET, называемый полем «Multi-Select List», по адресу http://www.xnodesystems.com/. Он способен:

(1) Multi-select; (2) Автозаполнение; (3) Проверка.

6

Попробуйте это серверный элемент управления, который наследуется непосредственно от CheckBoxList (бесплатно, с открытым исходным кодом): http://dropdowncheckboxes.codeplex.com/

3

Я использовал контроль с открытым исходным кодом на http://dropdowncheckboxes.codeplex.com/ и был очень доволен. Мое дополнение состояло в том, чтобы разрешить список проверенных файлов использовать только имена файлов вместо полных путей, если заголовок «selected» слишком длинный. Мое добавление вызывается вместо UpdateSelection в обработчике обратной обработки:

// Update the caption assuming that the items are files<br/> 
// If the caption is too long, eliminate paths from file names<br/> 
public void UpdateSelectionFiles(int maxChars) { 
    StringBuilder full = new StringBuilder(); 
    StringBuilder shorter = new StringBuilder(); 
    foreach (ListItem item in Items) { 
    if (item.Selected) { 
     full.AppendFormat("{0}; ", item.Text); 
     shorter.AppendFormat("{0}; ", new FileInfo(item.Text).Name); 
    } 
    } 
    if (full.Length == 0) Texts.SelectBoxCaption = "Select..."; 
    else if (full.Length <= maxChars) Texts.SelectBoxCaption = full.ToString(); 
    else Texts.SelectBoxCaption = shorter.ToString(); 
} 
Смежные вопросы