Выберите элемент с определенными атрибутами данных с помощью jQuery - PullRequest
1 голос
/ 02 апреля 2019

Как мне выбрать элемент с определенным атрибутом данных и специальным классом с помощью jQuery?

Например, я бы хотел выбрать следующие элементы:

<div data-roomid="55" data-status="NoData"></div>
<div data-roomid="55" data-status="Open"></div>
<div data-roomid="55" data-status="Close"></div>

Но не этот:

<div data-roomid="55" data-status="Book"></div>

Моя попытка следующая:

roomid = 55;
$('[data-roomid="'+ roomid +'"]').each(function(e) {

});

Спасибо.

Ответы [ 2 ]

1 голос
/ 02 апреля 2019

Вы можете использовать :not селектор - см. Демонстрацию ниже:

var roomid = 55, status = 'Book';
$('[data-roomid="' + roomid + '"]:not([data-status=' + status + '])').each(function() {
  $(this).css({
    color: 'blue'
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div data-roomid="55" data-status="NoData">NoData</div>
<div data-roomid="55" data-status="Open">Open</div>
<div data-roomid="55" data-status="Close">Close</div>
<div data-roomid="55" data-status="Book">Book</div>
0 голосов
/ 02 апреля 2019

Это то, что вы ищете?

$('div:not([data-status=Book])[data-roomid='+ roomid +']')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...