Как выбрать выпадающие списки внутри любого div?

Я использую ExtJs с Jquery. У меня есть панель, под которой у меня есть флажки, радио и выпадающие списки. Я использую следующий код, чтобы получить все элементы под панелью.

    $('#panelId : input').each

Это работает для радио и флажков. Но я пытаюсь сделать следующее для раскрывающегося списка, и это не работает.

    $('#panelId : select').each

Знатоки подскажите пожалуйста.

Примечание. Я рисую необработанный HTML-код на панели с помощью XTemplate. Поэтому я не могу получить элементы с помощью extjs (скорее я не знаю!). Может ли кто-нибудь предложить то же самое, используя extjs?


person hop    schedule 14.09.2011    source источник
comment
I am using ExtJs with Jquery Я не понимаю, почему кто-то так работает с двумя разными фреймворками.   -  person toopay    schedule 14.09.2011
comment
не могли бы вы поместить пример кода.   -  person Chamika Sandamal    schedule 14.09.2011
comment
@ Дерек, я имею в виду раскрывающиеся списки   -  person hop    schedule 14.09.2011
comment
@toopay Jquery просто для получения такой функциональности и ext js для всех компонентов. Я не уверен, что это хороший подход, но именно так была спроектирована наша архитектура, и мы ее придерживаемся. Откровенно говоря, jquery во многих случаях упрощает работу.   -  person hop    schedule 14.09.2011


Ответы (2)


:select не является допустимым селектором. Прочтите документацию по селектору jQuery.

Вы можете увидеть здесь быструю скрипту, чтобы увидеть, как она работает, и помочь вам понять, как использовать правильный ввод или выберите селекторы jQuery.

person SliverNinja - MSFT    schedule 14.09.2011

Функция селектора jQuery $ ожидает допустимый селектор CSS в качестве аргумента. Если вы хотите, чтобы все элементы <select> находились под родительским идентификатором, это должно делать то, что вы хотите:

$('#panelId select').each(...

Обратите внимание, что между #panelId и select нет двоеточия. Символы двоеточия в CSS зарезервированы для псевдоселекторов, таких как :hover.

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

$('#panelId select, #panelId input').each(...

Еще лучше было бы начать с панели, а затем выбрать только подходящих потомков:

$('#panelId').find('select, input').each(...

Надеюсь это поможет!

person jimbo    schedule 14.09.2011