繁体   English   中英

检查ul在jQuery中是否具有带有特定文本的li

[英]Check if ul has li with a specific text in jQuery

我目前正在尝试检查我的ul是否有一个li元素,它具有特定的文本。 在控制台中输入以下内容时,我将收到所有li文本:

jQuery(".et-pb-contact-message.contact-error ul:nth-child(2)").has("li").text();
"Name *E-Mail-Adresse *Betreff *Nachricht *Bestätigung"

现在,我已将此语句写到if块中,但可惜它不起作用:

 if (!jQuery(".et-pb-contact-message.contact-error ul:nth-child(2)").has("li").text() === 'Captcha *') { alert("No captcha error"); } 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="et-pb-contact-message contact-error"> <p>Bitte fülle die folgenden Felder aus:</p> <ul> <li>Name&nbsp;*</li> <li>E-Mail-Adresse&nbsp;*</li> <li>Betreff&nbsp;*</li> <li>Nachricht&nbsp;*</li> <li>Bestätigung</li> </ul><ul></ul> </div> 

 var flag = false; jQuery(".et-pb-contact-message.contact-error ul:nth-child(2) li").each((idx, ele) => { console.log(ele.innerText); if (!flag && ele.innerText == 'Captcha *') { flag = true; } }); if (!flag) alert("No captcha error"); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="et-pb-contact-message contact-error"> <p>Bitte fülle die folgenden Felder aus:</p> <ul> <li>Name&nbsp;*</li> <li>E-Mail-Adresse&nbsp;*</li> <li>Betreff&nbsp;*</li> <li>Nachricht&nbsp;*</li> <li>Bestätigung</li> <!--<li>Captcha&nbsp;*</li>--> </ul> <ul></ul> </div> 

 jQuery(".contact-error ul:nth-child(2) li").each(function(index) { if ($(this).html() === 'Captcha&nbsp;*') console.log('founded in ' + (index + 1) + 'th error'); }) 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="et-pb-contact-message contact-error"> <p>Bitte fülle die folgenden Felder aus:</p> <ul> <li>Name&nbsp;*</li> <li>Captcha&nbsp;*</li> <li>Betreff&nbsp;*</li> <li>Nachricht&nbsp;*</li> <li>Bestätigung</li> </ul> <ul></ul> </div> 

if (!(jQuery(".et-pb-contact-message.contact-error ul:nth-child(2)").has("li").text()).split(" ").includes('Captcha *')) {
    console.log("enjoy!");
  }

但是请记住,include方法在ie中不起作用。

jQuery(".et-pb-contact-message.contact-error ul:nth-child(2) li").each(function(){
  console.log(this.innerText);
});

使用此代码检查每个值。

暂无
暂无

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

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