jQuery if H1:包含一个词做某事
我已成功使用 contains()
函数,但从未将其与 if 语句
一起使用。我的下面的代码似乎在它应该工作的时候不起作用。我基本上是说,如果 H1
包含单词“true”,则执行某些操作,如果不执行其他操作。目前,无论 H1
中有什么,它都只显示代码的第一位。它从不显示 else
部分。
<H1>This h1 contains the word Star</H1>
if ($("H1:contains('True')")) {
var test= "<div>IT DID CONTAIN THE WORD TRUE!</div>";
$('h1').append(test);
} else {
var test= "<div>IT DID <b>NOT</b> CONTAIN THE WORD TRUE!</div>";
$('h1').append(test);
}
I've used the contains()
function successfully, but never have used it with an if-statement
. My below code doesn't seem to work when it should. I am basically saying if H1
contains the word "true", do something, if not do something else. Currently it only shows the first bit of code no matter what is in the H1
.. it never shows the else
part.
<H1>This h1 contains the word Star</H1>
if ($("H1:contains('True')")) {
var test= "<div>IT DID CONTAIN THE WORD TRUE!</div>";
$('h1').append(test);
} else {
var test= "<div>IT DID <b>NOT</b> CONTAIN THE WORD TRUE!</div>";
$('h1').append(test);
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您需要检查结果集合的
length
属性:因为
$("H1:contains('True')")
将返回一个对象,并且对象始终 评估为真实。You need to check the
length
property of the resulting collection:Since
$("H1:contains('True')")
will return an object and objects always evaluate to truthy.$("H1:contains('True')")
是一个选择器。它返回一个 jQuery 对象,而不是布尔值。要检查选择器是否找到任何对象,请检查length
属性:$("H1:contains('True')")
is a selector. It returns a jQuery object, not a boolean. To check that the selector found any objects, check thelength
property:试试这个
try this
通过包含,它返回一个列表。
请参阅此解决方案:
if contains certain text, then run jquery< /a>
With the contains, it gives back a list.
Refer to this for a solution:
if contains certain text, then run jquery
问题是
$("H1:contains('True')")
始终返回true
因为它始终是一个对象。您真正想要检查的是它是否包含元素。现在它将返回 else 部分。
注意:我相信
:contains
区分大小写。The problem is that
$("H1:contains('True')")
always returnstrue
because it is always an object. What you really want to check is if it contains elements.Now it will return the else part.
Note: I believe that
:contains
is case-sensitive.