Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Найти количество элементов списка (https://javascript.ru/forum/jquery/28620-najjti-kolichestvo-ehlementov-spiska.html)

рони 18.07.2014 15:18

SpiritAbsolute,
какой смысл в for -- строка 10 -- нужна строка только 12 .

SpiritAbsolute 18.07.2014 16:04

Да, точно! Плюс, нужно было добавить проверку, если <select> на странице много, то код должен срабатывать только с выбираемым.
/*
Задача - отследить изменение множества <select> на странице, стилизованных с помощью jquery ui
#tg - ID <select>, в котором нужно отследить изменения
#tg-menu - ID <ul>, который Jquery UI присваивает после формирования ul списка с значениями <select>
*/
// Отслеживаем клик по элементу(LI), который формирует Jquery UI после клика на span, которым он заменяет select
$('body').on('click', '.ui-menu-item', function() {
// Если <select> много на странице, то нужно условие, которое проверяет, что код изменений срабатывает именно с нужным <select>
if($(this).parent().prop('id')=='tg-menu') {
// Определяем позицию выбранного элемента(LI), по классу 'ui-state-focus', с помощью index()
var position=$('#tg-menu > li').index($('li.ui-state-focus'));
// Получив позицию, узнаем в какой позиции находится нужный <option> и делаем его выбранным.
$('#tg > option:eq('+position+')').prop("selected", "selected");
// Получаем значение выбранного <select>
var tg = $('#tg').val();
// Дальнейшие действия...
}
});

рони 18.07.2014 16:18

SpiritAbsolute,
хорошие плагины кастомизации сами устанавливают значения в селектах

SpiritAbsolute 18.07.2014 16:26

Типа cusel? Я решил от него отказаться, он мне показался ужасным... Мы его тягали из проекта в проект, пока вот он не слетел на новом jquery 1.11.1 и я его не снес. Вот переделываю теперь :-)

рони 18.07.2014 16:39

SpiritAbsolute,
у вас в селектах -- текст и значения совпадают?

SpiritAbsolute 18.07.2014 16:50

охохохо.... возникла следующая серьезная проблема... jquery ui генерирует свои списки из select`a только первый раз. А когда новые данные приходят в селект из ajax , он не генерирует новые свои списки ul>li


Часовой пояс GMT +3, время: 06:39.