Link1Link2Link3Button1

JQuery - Как выбрать по атрибуту

javascript jquery html

1821 просмотра

3 ответа

У меня есть такой HTML-код,

<a id="a_1" href="#" disabled_onclick="true">Link1</a>
<a id="a_2" href="#">Link2</a>
<a id="a_3" href="#" disabled_onclick="true">Link3</a>
<input id="b_1" type="submit" disabled_onclick="true">Button1</input>
<input id="b_2" type="submit">Button2</input>
<input id="b_3" type="submit">Button3</input>

Теперь мне нужно написать jQuery, который возвращает мне все атрибуты в моем html со свойством disabled_onclick, установленным в true. В этом случае я должен получить 3 элемента, два тега ссылки и один тег ввода.

Автор: bragboy Источник Размещён: 12.11.2019 09:15

Ответы (3)


11 плюса

Решение

Вот как можно выбрать все эти элементы:

$('[disabled_onclick="true"]');

Поскольку trueв CSS допустимое значение атрибута без кавычек , вы можете даже опустить кавычки :

$('[disabled_onclick=true]');

Если вы заботитесь о корректном HTML, вам следует рассмотреть возможность использования пользовательского data-*атрибута.

<input id="b_1" type="submit" disabled_onclick="true">
<!-- …becomes… -->
<input id="b_1" type="submit" data-disabled-onclick="true">

Таким образом, это действительный HTML, и вы все равно сможете выбрать его следующим образом:

$('[data-disabled-onclick="true"]');
Автор: Mathias Bynens Размещён: 09.02.2012 11:31

4 плюса

попробуй это

$('[disabled_onclick="true"]')
Автор: dku.rajkumar Размещён: 09.02.2012 11:31

1 плюс

$('input[disabled_onclick="true"]');

Смотрите http://api.jquery.com/attribute-equals-selector/

В приведенной выше строке вы только запросите input nodes, вы можете опустить, inputкоторый затем будет запрашивать все узлы во всей вашей разметке (что, вероятно, довольно медленно).

$('[disabled_onclick="true"]');
Автор: jAndy Размещён: 09.02.2012 11:31
Вопросы из категории :
32x32