Выберите элементы с JQuery, где существует имя атрибута с шаблоном - PullRequest
0 голосов
/ 02 ноября 2018

У меня есть HTML-элементы с пользовательскими атрибутами данных, которые имеют разное окончание, но начинаются одинаково (не значение, а само имя атрибута). Эти атрибуты могут иметь значение или нет. Как я могу выбрать все из них?

<div data-validator-required> DIV 1</div>
<div data-validator-number="5.2"> DIV 2</div>
<div data-validator-submit> DIV 3</div>
<div data-validator-pattern="\d{5}-\d{3}-\d"> DIV 4</div>

Я хочу выбрать все элементы, у которых есть атрибут данных с именем "data-validator-*". Каков правильный селектор jQuery для этого?

1 Ответ

0 голосов
/ 02 ноября 2018

Попробуйте, и все готово ... Просто и легко ...

$('div').filter(function() {
  for (attr of this.attributes)
    if (attr.name.startsWith("data-validator")){
      alert($(this).text());
    }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div data-validator-required> DIV 1</div>
<div data-validator-number="5.2"> DIV 2</div>
<div data-validator-submit> DIV 3</div>
<div data-validator="\d{5}-\d{3}-\d"> DIV 4</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...