Js найти конкретный div с атрибутом данных

0

Привет, я работаю над javascript чатом, и я хочу добавить данные в разговор, к которому он принадлежит. У меня есть функция для создания нового окна, и я устанавливаю атрибут данных для каждого чата div

newWindow: function(name, id) {               
            if(!pushChatToArray(removeWhiteSpace(name))) return;                
            var div = htmlStructure(removeWhiteSpace(name));                
            setName(div, name);                
            setDataAttribute(div,"open","active");                
            setDataAttribute(div, "id", id);                
            $("body").append(div);                
            setCoordinates(div);
        },

im создает новые окна, подобные этому

chatbox.newWindow("USERNAME", "28");

все, что я хочу, это выбрать конкретный div для чата по идентификатору атрибута data

этот код im используется, когда я пишу кого-то, с которым я сосредоточился, поэтому я могу получить идентификатор, выбрав div следующим образом:

var id = $(this).closest(".chat").data("id");

но я хочу найти чат с определенным идентификатором, подобным этому

var chatid = $("body").find(".chat[data-id=1]");

Спасибо за помощь

Теги:

2 ответа

1

Попробуй это:

var chatid = $('.chat').filter(function () {
    return $(this).data('id') == 1;
});
  • 0
    Большое спасибо, это работает :)
1

Я думаю, вы можете использовать, как показано ниже

var chatid = $(".chat").find("[data-id='" + current + "']");

Кроме того, я нахожу больше советов в jQuery, как найти элемент на основе значения атрибута данных?

Вы должны использовать attr("data-id") чем data("id")

Ещё вопросы

Сообщество Overcoder
Наверх
Меню