Подтвердить что ты не робот

JQuery - как я могу найти элемент с определенным идентификатором?

У меня есть таблица, и у каждого из ее td есть уникальный идентификатор, который соответствует некоторым временным интервалам (0800 до 0830... 0830 до 0900 и т.д.).

У меня есть текст ввода, где пользователь будет вводить интервалы времени, которые они хотят заблокировать.

Если они вводят интервал, которого нет в моей таблице, другими словами, если они вводят интервал, который не соответствует ни одному из моих td id, я хочу показать предупреждение, говорящее что-то вроде this interval is not available for blocking.

Но мне трудно найти этот идентификатор.

Я делаю это:

    var horaInicial = $("#horaInicial").val().split(':')[0] + $("#horaInicial").val().split(':')[1]; // this is remover the ":" from a formatted hour

    var verificaHorario = $("#tbIntervalos").find("td").attr("id", horaInicial);

Но этот verificaHorario фактически устанавливает все мои td на этот horaInicial id.

Как я могу найти идентификатор в моей таблице, и если он не существует, показать некоторые предупреждения?

4b9b3361

Ответ 1

Если вы пытаетесь найти элемент по id, вам не нужно искать только таблицу - он должен быть уникальным на странице и поэтому вы должны иметь возможность использовать:

var verificaHorario = $('#' + horaInicial);

Если вам нужно искать только в таблице по любой причине, вы можете использовать:

var verificaHorario = $("#tbIntervalos").find("td#" + horaInicial)

Ответ 2

Я не знаю, решает ли эта проблема вашу проблему, но вместо:

$("#tbIntervalos").find("td").attr("id", horaInicial);

вы можете просто сделать:

$("#tbIntervalos td#" + horaInicial);

Ответ 3

Это

var verificaHorario = $("#tbIntervalos").find("#" + horaInicial);

найдет вам td, который необходимо заблокировать.

Собственно, это также сделает:

var verificaHorario = $("#" + horaInicial);

Тестирование размера() завернутого набора ответит на ваш вопрос относительно существования идентификатора.

Ответ 4

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

$("#tbIntervalos").find('td[id="'+horaInicial+'"]')

Ответ 5

Как все идентификаторы html уникальны в действительном html-документе, почему бы не искать идентификатор напрямую? Если вы обеспокоены тем, что они вводят идентификатор, который не является таблицей, вы можете проверить тип тега таким образом?

Просто идея!

S