使用jQuery,我以编程方式生成了一堆div,就像这样:
<div class="mydivclass" id="myid1">Some Text1</div>
<div class="mydivclass" id="myid2">Some Text2</div>
在代码的其他地方,我需要检测这些div是否存在。div的类名是相同的,但ID为每个div的变化。任何想法如何检测他们使用jQuery?
使用jQuery,我以编程方式生成了一堆div,就像这样:
<div class="mydivclass" id="myid1">Some Text1</div>
<div class="mydivclass" id="myid2">Some Text2</div>
在代码的其他地方,我需要检测这些div是否存在。div的类名是相同的,但ID为每个div的变化。任何想法如何检测他们使用jQuery?
当前回答
在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返回的第一个对象来简化它:
if ($(".mydivclass")[0]){
// Do something if class exists
} else {
// Do something if class does not exist
}
在这种情况下,如果第一个([0])索引处有一个真值,则假设类存在。
编辑04/10/2013:我在这里创建了一个jsperf测试用例。
Javascript中最好的方法:
if (document.getElementsByClassName("search-box").length > 0) {
// do something
}
在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......
}
简单代码如下:
if ($('.mydivclass').length > 0) {
//Things to do if class exist
}
使用特殊id隐藏div:
if ($('#'+given_id+'.mydivclass').length > 0) {
//Things to do if class exist
}
if($(".myClass")[0] != undefined){
// it exists
}else{
// does not exist
}