[javascript] Проверьте, существует ли div с определенным именем класса


6 Answers

Вы можете использовать size() , но jQuery рекомендует использовать длину, чтобы избежать накладных расходов на другой вызов функции:

$('div.mydivclass').length

Так:

// since length is zero, it evaluates to false
if ($('div.mydivclass').length) {

http://api.jquery.com/size/

http://api.jquery.com/length/

ОБНОВИТЬ

Выбранный ответ использует перфекционный тест, но он немного ошибочен, так как он также включает в себя выбор элементов в составе перфоратора, который не является тем, что тестируется здесь. Вот обновленный перфекционный тест:

http://jsperf.com/check-if-div-exists/3

Мой первый запуск теста показывает, что поиск свойств быстрее, чем поиск индекса, хотя ИМО это довольно незначительно. Я по-прежнему предпочитаю использовать длину, так как для меня более разумно понимать намерение кода вместо более сложного условия.

Question

Используя jQuery, я программно генерирую кучу div 's следующим образом:

<div class="mydivclass" id="myid1">Some Text1</div>
<div class="mydivclass" id="myid2">Some Text2</div>

Где-то в моем коде мне нужно определить, существуют ли эти DIV. Имя класса для divs совпадает с идентификатором для каждого div. Любая идея, как их обнаружить с помощью jQuery?




Вот решение без использования JQuery

var hasClass = element.classList.contains('class name to search');
// hasClass is boolean
if(hasClass === true)
{
     // Class exists
}

ссылка link




проверьте, существует ли div с определенным классом

if ($(".mydivclass").length > 0) //it exists 
{

}



Существует много способов проверить существование div с определенным именем класса. Ниже приведены некоторые полезные способы:

1.  if($("div").hasClass("mydivclass")){//Do any thing}

   // It returns true if any div has 'mydivclass' name. It is a based on the class name

2. if($("#myid1").hasClass("mydivclass")){//Do any thing}

   //  It returns true if specific div(myid1) has this class "mydivclass" name. 
   //  It is a  based on the specific div id's.

3. if($("div[class='mydivclass']").length > 0){//Do any thing}

   // It returns all the divs whose class name is "mydivclass"
  //  and it's length would be greater than one.

Мы можем использовать любой из определенных способов, основанных на требовании.




Это довольно просто ...

if ($('.mydivclass').length > 0) {
  //do something
}



Простой код приведен ниже:

if ($('.mydivclass').length > 0) {
   //Things to do if class exist
}

Чтобы скрыть div с идентификатором участника:

if ($('#'+given_id+'.mydivclass').length > 0) {
   //Things to do if class exist
}



var x = document.getElementsByClassName("class name");
if (x[0]) {
alert('has');
} else {
alert('no has');
}



Related