Javascript jQuery:如何使用包含特定文本的类来显示元素?

Javascript jQuery:如何使用包含特定文本的类来显示元素?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,更新: 我已经用我正在使用的代码更新了这个问题,例如,基于(选择)元素,如果(选项)选择了油漆(/option),我想显示或隐藏整个“工人阶级”部门工作,或者如果(选项)选择了车身车间(/option),我想显示整个“非生产阶级”部门非生产 我有多个HTML元素,具有相似的divs结构,但类名不同。然而,其中一些div确实共享某些文本,我如何使用.show()来使用它们的显示这些div。class名称包含某些共享文本 $('#qualifications').change(function(){

更新: 我已经用我正在使用的代码更新了这个问题,例如,基于(选择)元素,如果(选项)选择了油漆(/option),我想显示或隐藏整个“工人阶级”部门工作,或者如果(选项)选择了车身车间(/option),我想显示整个“非生产阶级”部门非生产

我有多个HTML元素,具有相似的divs结构,但类名不同。然而,其中一些
div
确实共享某些文本,我如何使用
.show()
来使用它们的
显示这些div。class
名称包含某些共享文本

$('#qualifications').change(function(){
    if($('#qualifications').val() == 'Paint'){
        $('div:contains("Paint")').show();
        }
    })
});
这是一个不好的示例,因为我想使用
类名来定位元素,而不是
('div:contains('Paint'))

代码如下:

                <select id='qualifications'>
                    <option>All</option>
                    <option>Body Shop</option>
                    <option>Electrician</option>
                    <option>Mech</option>
                    <option>Paint</option>
                </select>

                    <!-- Working Class -->
                    <div class="working">
                        <div class="working-indicator">
                            <p>W</p>
                            <div class="user-circle">
                                <img src="imgs/usericon.png">
                            </div>
                            <div class='user-info'>
                                <h6> Dennis Bokenkamp </h6>
                                <p><b><i>Paint</b></i></p>
                                <p>FIA</p>
                            </div>
                            <div class='user-clocking'>
                                <img src="imgs/clockicon.png">
                                <p>10/8/2016</p>
                                <p>10:09:00 AM</p>
                            </div>
                        </div>
                    </div>

                    <!-- Non-Productive Class -->
                    <div class="non-productive">
                        <div class="non-productive-indicator">
                            <p>N</p>
                            <div class="user-circle">
                                <img src="imgs/usericon.png">
                            </div>
                            <div class='user-info'>
                                <h6> Rick Richard </h6>
                                <p><b><i>Bodyshop 200%</b></i></p>
                                <p>DNF</p>
                            </div>
                            <div class='user-clocking'>
                                <img src="imgs/clockicon.png">
                                <p>10/8/2016</p>
                                <p>11:09:00 AM</p>
                            </div>
                        </div>
                    </div>

全部的
车身修理厂
电工
机械
油漆
W

丹尼斯·博肯坎普 油漆

国际汽联

2016年10月8日

上午10:09:00

N

里克理查德 车身修理厂200%

DNF

2016年10月8日

上午11:09:00

试试这个:

$(document).ready(function(){

    $("#qualifications").on("change",function(){

        if($(this).val() == 'Paint') 

            $("div.working:contains(Paint)").show();

    })

})
在下面的示例中,我使用红色边框而不是
显示
,因为如果选择“选择框的绘制”,则显示所选内容


全部的
车身修理厂
电工
机械
油漆
W

丹尼斯·博肯坎普 油漆

国际汽联

2016年10月8日

上午10:09:00

N

里克理查德 车身修理厂200%

DNF

2016年10月8日

上午11:09:00

$(文档).ready(函数(){ $(“#资格”)。关于(“变更”,职能(){ if($(this).val()=='Paint') $(“div.working:contains(Paint)”).css({border:“2px solid red”}); }) })
您可以使用以下语法:
$('div[class*=“Paint”]”)。show()

请共享html代码!使用each()循环遍历所有这些div,如果($(this).text()=='searchstring'),那么show()是否使用选择器中的类
div.YourClassName:contains(“Paint”)
您能显示HTML吗?答案对你的问题有不同的解释,你真正的意思并不清楚。
Paint
是在文本中还是在类中?ehsan,Barmar,我用更多的描述和代码更新了问题。当存在点符号时,这是一种非常糟糕的选择类的方法。你认为:contains方法更可取吗?我想是的。虽然如果我遇到这样的情况,我需要看看我的类是否包含一个单词,但我真的觉得我做错了什么。我同意你关于这个问题的观点,我还认为这是一个架构问题。但是
[class=*]
是一个本机CSS选择器,因此我认为这是一个很好的解决方案。感谢Ehsan,我有一个问题:我确实有其他具有其他类名的div,但结构与工作和非生产div相同,可能还包含Paint、Bodyshop、Mech等。。。我如何瞄准所有这些目标?我必须在这里指定每个类吗$(“div.classnames:contains(Paint)”)@alimarwan,您可以保存选择值,
var value=$(this.val()
并使用
$(“div.classNames:contains(“+value+”)).css({边框:“2px实心红色”})如果我的帖子能帮你标记,请。