Jquery знайти всі ідентифікатори, що починаються з рядка?


78

Просто цікавився, як я буду шукати всі ідентифікатори, що починаються з "content_" на всій сторінці, а також спосіб знайти їх лише в іменованому div, який називається "extra_content". Як тільки я отримаю всі ідентифікатори, я хочу їх приховати.

Нижче наведено приклад того, що я хочу знайти.

<div id="content_1"></div> <-- Find
<div id="content_2"></div> <-- Find
<div id="contet_3"></div>

<div id="extra_content"> 
    <div id="content_extra_1"></div> <-- Find
    <div id="content_extra_2"></div> < -- Find
</div>

Приклади були б корисними.

Дякую


Ви хочете всі приховати або отримати ідентифікатори?
Ананд Тангаппан

Відповіді:


149

Використовуйте селектор attribute-start-with :

$('[id^="content_"]').hide();

Щоб обмежити пошук елементами всередині extra_content:

$('#extra_content [id^="content_"]').hide();

1
Я не знав селектора attribute-start-with (+1 для вас обох), але я думаю, вам слід додати клас атрибутів, щоб маніпулювати цим, замість використання атрибута id. Це легше зрозуміти, більш чисто і допомагає запобігти помилкам ...
jbatista

Привіт, у мене плутанина, у мене такий сценарій: <div id="min1"></div> <div id="max1"></div> <div id="min2"></div> `<div id =" max2 "> </div>`. Я використовую це: $("[id^=min]", "[id^=max]").val('hello')щоб щось робити з ними. Це не працює. В чому проблема ?
Mazhar MIK

@MazharMIK Проблема у вас полягає у розділенні селекторів. Воно повинно бути: $("[id^=min],[id^=max]").val('hello'). в цьому випадку. (PS Classes - ваш друг)
Danny Mahoney
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.