使用jQuery,我以编程方式生成了一堆div,就像这样:

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

在代码的其他地方,我需要检测这些div是否存在。div的类名是相同的,但ID为每个div的变化。任何想法如何检测他们使用jQuery?


当前回答

检查div是否与某个类一起存在

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

}

其他回答

简单代码如下:

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

使用特殊id隐藏div:

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

在Jquery中,你可以这样使用。

if ($(".className")[0]){

   // Do something if class exists

} else {

// Do something if class does not exist

}

使用JavaScript

if (document.getElementsByClassName("className").length > 0) {

// Do something if class exists

}else{

    // Do something if class does not exist......

}

没有jQuery:

原生JavaScript总是更快。在这种情况下:(示例)

if (document.querySelector('.mydivclass') !== null) {
    // .. it exists
}

如果希望检查父元素是否包含具有特定类的另一个元素,可以使用以下方法之一。(例子)

var parent = document.querySelector('.parent');

if (parent.querySelector('.child') !== null) {
    // .. it exists as a child
}

或者,您可以在父元素上使用.contains()方法。(例子)

var parent = document.querySelector('.parent'),
    child = document.querySelector('.child');

if (parent.contains(child)) {
    // .. it exists as a child
}

..最后,如果你想检查一个给定的元素是否只包含一个特定的类,使用:

if (el.classList.contains(className)) {
    // .. el contains the class
}

要显式地测试div元素:

如果($ (' div.mydivclass”)。长度){…}

$('div').hasClass('mydivclass')// Returns true if the class exist.