jQuery: селекторы - SELECT


jQuery: селекторы - SELECT
jQuery: 8 полезных советов при работе с элементом SELECT
собрал коллекцию советов по работе с элементом Список (<select>) с помощью jQuery. Все эти советы максимально полезны в том случае, если список формируется и обрабатывается динамически. В моем случае это <select name=”loadFileName”>, которые заполняется динамически результатом ajax-запроса и содержит доступные для загрузки файлы.

Итак, когда вы работаете с динамически заполняемым списком, вам нужно уметь:

1. Удалить все элементы списка

$('select[@name=mySelect] option').remove();

2. Добавить в список новый элемент

$('select[@name=mySelect]').append('<option>Новый элемент списка</option>');

У меня, к примеру, список формируется из XML данных таким образом:

$(xml).find('file').each( function(){
        $('select[@name=loadFileName]')
         .append('<option>'+$(this).find('title').text()+'</option>');
});

Схема здесь проста: мы ищем все теги <file>, обрабатываем их с помощью .each() - находим <title></title> и загоняем текст в следующий пункт списка.

3. Сделать выделенным первый пунки списка

$('select[@name=loadFileName] option:first').attr('selected', 'yes');

4. Принудительно снять выделение с элемента списка

$('select[@name=loadFileName] option:first').removeAttr('selected');

5. Получить значение выделенного пункта из списка

Тут есть два варианта. Первый, если вы используете аттрибут <option value=”some value”>:

var file = $('select[@name=loadFileName] option:selected').val();

И второй вариант: вы не задаете value, вас интересует то, что заключено между <option>…</option> (как у меня в проекте):

var file = $('select[@name=loadFileName] option:selected').text();

Теперь переменная file содержит нужное нам значение.

6. Проверить, выбран ли какой-нибудь элемент списка

Это нужно делать обязательно, иначе в приложении могут возникнуть проблемы.

if( typeof $('select[@name=loadFileName] option:selected').text()
           === 'undefined' ){
       alert('Ни один элемент списка не выбран');
}

7. Превратить список в “автомасштабируемый”

Т.е. отобразить в списке ровно столько элементов, сколько в нем есть:

$('select[@name=loadFileName]')
           .attr('size', $('select[@name=loadFileName] option').size());

8. Сделать недоступны для выбора отдельный элемент

$('select[@name=loadFileName] option:contains('текст нужного элемента')')
          .attr('disabled', 'disabled');

Разрешить выделение всех ранее недоступных элементов можно так:

$('select[@name=loadFileName] option:disabled').removeAttr('disabled');
© http://www.kachayev.ru/

Оценить Статью:  
1   2   3   4   5   6   7   8   9   10    

« Назад
SAPE все усложнил?

MainLink - простая и прибыльная продажа ссылок!

Последние поступления:

Размещена 06 апреля 2012 года

С детства мечтаю увидеть трёх животных: ёшкиного кота, бляху муху и сидорую козу!!!

Размещена 01 января 2012 года

Иду по лесу… Дождь, ветер, ночь… Замерз весь… Смотрю — машина стоит, подхожу, в окошко смотрю — там никого. Дверцу попробовал — открыто, ну я залез и сижу… вдруг машина поехала! Я в шоке… машина едет, я сзади сижу, за рулем никого… тут рука волосатая появляется откуда-то, порулила и исчезла… у меня волосы на попе зашевелились… тут деревня показалась, вот уже дома первые… тут машина останавливается, в салон другой мужик заглядывает и говорит:
— а ты че тут делаешь???
— да вот, еду…
— ах**ть просто!!! я толкаю, а он б*** едет!

Запуск приложений на отдельном X-сервере

Размещена 18 ноября 2011 года

Запуск игр в отдельном X сервере на примере Warcraft

читать далее…

Размещена 10 октября 2011 года

Обсуждение новости "В Японии изобрели устройство для имитации поцелуев":

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

ххх: Лучше бы изобрели устройство которое может дать по морде через итернет. Вещь была бы весьма актуальная.

Краткое Руководство по iptables: Действия и переходы

Размещена 23 сентабря 2011 года

Действия и переходы сообщают правилу, что необходимо
выполнить, если пакет соотвествует заданному критерию. Чаще
всего употребляются действия ACCEPT и DROP. Однако, давайте кратко
рассмотрим понятие переходов.

читать далее…