Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Поиск элементов, класс которых содержит помимо прочего одно слово (https://javascript.ru/forum/jquery/53160-poisk-ehlementov-klass-kotorykh-soderzhit-pomimo-prochego-odno-slovo.html)

borus 23.01.2015 11:56

Поиск элементов, класс которых содержит помимо прочего одно слово
 
Здравствуйте.

На странице есть похожие select-ы, которые отличаются названиями классов, которые впрочем похожи своей концовкой. Есть такие названия классов:
baget_select
tsvet_select
razmer_select

Можно ли какой-то одной функцией проверить наличие таких элементов? Интересует проверка вида
if($("select").hasClass('*_select')){...

где * в моей интерпретации здесь подразумевает любое количество символов в начале названия класса

danik.js 23.01.2015 12:03

Цитата:

Сообщение от borus
Можно ли какой-то одной функцией проверить наличие таких элементов?

А зачем это нужно?

borus 23.01.2015 13:12

Цитата:

Сообщение от danik.js (Сообщение 352946)
А зачем это нужно?

надо проверить наличие таких элементов и что-то сделать в случае наличия

losos100 23.01.2015 13:36

Цитата:

Сообщение от borus
надо проверить наличие таких элементов и что-то сделать в случае наличия

<html>
<head>
</head>
 
<body>

<select class="foo_select"></select>
<select class="foo_noselect"></select>
<select class="fuck_select"></select>

<script>

alert(
 [].filter.call(document.getElementsByTagName("select"), function(e){
    return /_select/.test(e.className)
  }).length>0
)

</script>
</body>
 
</html>

_select$ будет надежней, если не предполагается foo_selectbar и пр.

d.skuratovich 23.01.2015 13:41

borus, не слушайте ответы про регулярные выражения!)
jQuery('[class*="_select"]');


Вот этим все решается. На будущее надо немного знать селекторы

krasovsky 23.01.2015 13:41

как вариант $('[class*=_select]').length - все элементы содержащие эту строку в аттрибуте clsss
$('[class$=_select]').length - все элементы атрибут class которых заканчивается на _select

losos100 23.01.2015 13:56

Цитата:

Сообщение от d.skuratovich
На будущее надо

На будущее надо учиться красить губы и носить чулки. Любая jq-секретутка должна освоить азы своей профессии.

krasovsky 23.01.2015 14:31

losos100,
Это я тебе написал, ты второй раз ошибся, мой маленький истеричный друг.

losos100 23.01.2015 14:39

krasovsky,
Ну, и что значит теги, идиот? Раскрой загадку. Я че-то подозревать начинаю, что ты реально русский не ботаешь, уже кроме шуток.


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