检测具有无值属性的元素

时间:2014-06-26 08:33:09

标签: javascript jquery jquery-selectors

让我说我有

<div class="some-class" selected></div>

我试图说它是否有'选择',但是

$(".some-class").attr("selected") //undefined
$(".some-class").is("*[selected]") // false

我是否可以说它是否有selected属性,即使它没有价值?

3 个答案:

答案 0 :(得分:3)

尝试在此背景下使用has attribute selector

$(".some-class").is("[selected]")

DEMO

答案 1 :(得分:0)

尝试这样做:编写一个函数hasAttr(),检查是否提供属性undefined。如果是undefined则表示属性不存在。

$.fn.hasAttr = function(name) {  
   return this.attr(name) !== undefined;
};

 if($('.some-class').hasAttr('selected'))
{
  //do your stuff 
}

答案 2 :(得分:0)

可以做到

$(".some-class[selected]")

然后检查是否存在

let element = $(".some-class[selected]");
if (element.length)