【发布时间】:2015-11-06 20:22:54
【问题描述】:
当使用Attribute Contains Word Selector 时,它应该评估为真吗?我正在尝试在下面的 if/else 语句中使用它,但它的评估结果不正确。
<li class="orange blue">
<div class="answer">Some Content</div>
</li>
<input type="button" name="yellow" value="yellow" class="yellow" />
<br />
<input type="text" value="" class="result" />
$("input.yellow").click(function() {
if ( $("div.answer").parent().hasClass($("[class~='bl']")) == true ){
$("input.result").val("has class");
} else {
$("div.answer").parent().addClass("blue");
$("input.result").val("class added")
};
});
【问题讨论】:
-
呃,hasClass 需要一个字符串。你给它一个 jQuery 对象。
-
您可以考虑使用 filter().length 代替。或者是()。 .is("[class~='bl']")
-
哦,谢谢,我会试试的。我是 jQuery/javascript 的新手。
-
在这种情况下,我可能还会评论 hasClass() 和 is() 都返回布尔值 true/false,因此没有必要这样做 == true
标签: javascript jquery attributes selector word