[英]JQuery check if <li> contains specific text
我正在尝试检查锚点是否包含特定文本,但不幸的是它对我不起作用。
我有这样的文字: REGISTER | LOG IN |SIGN OUT
REGISTER | LOG IN |SIGN OUT
我在下面编写了JavaScript代码。
var logintxt = $(".login-info2 a").text();
if ($('.login-info2 a:contains("Sign Out")').length > 0) {
console.log(logintxt + " yes");
}
HTML代码如下。
<li class="user-info2">
<a class="smalltext" href="/register">Register</a> |
<a class="smalltext" href="/login">Log In</a>
</li>
<li class="user-info2">
<a class="smalltext" href="/signout">Sign Out</a>
</li>
不幸的是,它不起作用。 有谁能说出解决这个问题的方法?
谢谢
var logintxt = $(".login-info2").text();
if ($('.login-info2:contains("Sign Out")').length > 0) {
console.log(logintxt + " yes");
}
这样对我有用
尝试这样。
$(".user-info2 a").each(function(){ var logintxt = $(this).html().replace(/ /g, ' ').toLowerCase(); if (logintxt == "sign out") { console.log(logintxt + " yes"); } });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <li class="user-info2"> <a class="smalltext" href="/register">Register</a> | <a class="smalltext" href="/login">Log In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign Out</a> </li>
您可以像这样使用它:
var logintxt = $(".login-info2 a").text();
if(logintxt.toLowerCase() === "sign up"){
console.log(logintxt + " Yes");
}
由于链接文本中包含HTML实体,因此检查链接目标可能更可靠:
if ([...linklist.querySelectorAll('a')].some(a => a.getAttribute('href') === '/signout')) { console.log('logout link found'); } else { console.log('none found') };
<ul id="linklist"> <li class="user-info2"> <a class="smalltext" href="/register">Register</a> | <a class="smalltext" href="/login">Log In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign Out</a> </li> </ul>
或使用jQuery:
if ($('#linklist a[href="/signout"]').length) { console.log('logout link found'); } else { console.log('none found') };
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul id="linklist"> <li class="user-info2"> <a class="smalltext" href="/register">Register</a> | <a class="smalltext" href="/login">Log In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign Out</a> </li> </ul>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.