繁体   English   中英

jQuery检查是否 <li> 包含特定文字

[英]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>&nbsp;|&nbsp;
    <a class="smalltext" href="/login">Log&nbsp;In</a>
</li>

<li class="user-info2">
    <a class="smalltext" href="/signout">Sign&nbsp;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(/&nbsp;/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>&nbsp;|&nbsp; <a class="smalltext" href="/login">Log&nbsp;In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign&nbsp;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>&nbsp;|&nbsp; <a class="smalltext" href="/login">Log&nbsp;In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign&nbsp;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>&nbsp;|&nbsp; <a class="smalltext" href="/login">Log&nbsp;In</a> </li> <li class="user-info2"> <a class="smalltext" href="/signout">Sign&nbsp;Out</a> </li> </ul> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM