2010-08-11 3 views
8

Я уверен, что это очень просто, но я просто могу его найти.jQuery - получить выбор, основанный на значении

Мне нужно получить набор текстовых полей из их значения. Мне не нужна ценность, мне нужны элементы. Я хочу что-то вроде:

$(".ProductCode [value:'hideme']").hide(); 

Я заканчиваю с

unrecognized expression: [value:'hideme'] 

Кстати,

$(".ProductCode").each(function() { if ($(this).val() == 'hideme') $(this).hide(); }); 

работает, но это, кажется, не очень чистый.

+0

Там нет необходимости использовать 'каждый()'. Когда вы выберете элементы, вы закроете 'hide()' для всех выбранных элементов. Я отредактировал свой ответ, чтобы включить пример jsFiddle, который скрывает сразу 2 текстовых поля. –

+0

нормально, у меня не было: вместо a = , но у меня тоже было место. Благодаря обоим, я дал это @ peter-ajtai для примера jsFiddle. но +1 к обоим. –

ответ

14

Используйте attribute equals selector из JQuery

$(".ProductCode[value='hideme']").hide(); 

Чтобы быть более точным, можно также использовать multiple attribute selector:

$("input[class='ProductCode'][value='hideme']").hide(); 

Разница между ними состоит в том, что первый выбирает все элементы с определенным класса и ценности. Второй выбирает только все INPUT с определенным классом и значением.

Эти селекторы будут выбирать все соответствующих элементов. Так что функция hide() скроет все элементы. Поэтому нет необходимости «вручную» перебирать выбранные элементы с помощью each() или другими вещами .. hide() автоматически делает это за вас.

Here is a live example.

7

Try:

$(".ProductCode[value='hideme']").hide(); 

См Attribute Equals Selector в документации JQuery для получения более подробной информации.

+0

Вау, я должен был это увидеть. Так что я больше не получаю ошибку, но я тоже ничего не получаю. Есть ли список атрибутов, или это атрибуты HTML, которые конкретно имеет значение jQuery? –

+0

Возможно, вы могли бы опубликовать некоторые из HTML, которые вы пытаетесь выбрать ... –

+0

Спасибо, Джастин, я понял, пространство меня тоже отбросило. –

Смежные вопросы