我目前正在尝试检查我的li
中是否有包含特定文本的ul
元素。在控制台中输入以下内容后,我将收到所有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 *</li>
<li>E-Mail-Adresse *</li>
<li>Betreff *</li>
<li>Nachricht *</li>
<li>Bestätigung</li>
</ul><ul></ul>
</div>
答案 0 :(得分:2)
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 *</li>
<li>E-Mail-Adresse *</li>
<li>Betreff *</li>
<li>Nachricht *</li>
<li>Bestätigung</li>
<!--<li>Captcha *</li>-->
</ul>
<ul></ul>
</div>
答案 1 :(得分:1)
jQuery(".contact-error ul:nth-child(2) li").each(function(index) {
if ($(this).html() === 'Captcha *')
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 *</li>
<li>Captcha *</li>
<li>Betreff *</li>
<li>Nachricht *</li>
<li>Bestätigung</li>
</ul>
<ul></ul>
</div>
答案 2 :(得分:1)
if (!(jQuery(".et-pb-contact-message.contact-error ul:nth-child(2)").has("li").text()).split(" ").includes('Captcha *')) {
console.log("enjoy!");
}
但是请记住,include方法在ie中不起作用。
答案 3 :(得分:1)
jQuery(".et-pb-contact-message.contact-error ul:nth-child(2) li").each(function(){
console.log(this.innerText);
});
使用此代码检查每个值。