如果元素的后代包含特定单词,则Jquery执行代码

时间:2015-09-23 19:34:02

标签: javascript jquery html

HTML:

<div id="firstpanel">
    <table class="table table-bordered">
        <tr>
            <td class="alert alert-error">
                <span class="errorMsg">Required:</span>
                blah blah
            </td>
        </tr>
    </table>
</div>
<div id="second panel">
    some text
</div>

如果firstpanel div包含单词&#34;我需要执行一些代码;必需&#34;

以下代码对我不起作用:

if($("#firstpanel").contains("Required")){

      //some code


 }

3 个答案:

答案 0 :(得分:3)

您需要使用 2ality 选择器

if($('#firstpanel:contains("Required")').length){

      //some code

}
  

:contains() :匹配的文字可以直接显示在所选元素中,任何元素的后代中,或其组合中。与属性值选择器一样,括号内的文本:contains()可以写为单词或用引号括起来。文本必须具有匹配的案例才能被选中。 (摘自:contains()

答案 1 :(得分:2)

如果要查找 元素 ,请使用contains 功能

如果要查找元素中是否出现某个字符串,请使用: :contains() 选择

if($('#firstpanel:contains("Required")').length){}

答案 2 :(得分:0)

这也有效:

if ($("#firstpanel").text().match("Required")) {
//somecode
}