Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何仅在选择下拉列表中的特定值时切换类?_Jquery_Twitter Bootstrap_Select_Toggleclass_Bootstrap Select - Fatal编程技术网

Jquery 如何仅在选择下拉列表中的特定值时切换类?

Jquery 如何仅在选择下拉列表中的特定值时切换类?,jquery,twitter-bootstrap,select,toggleclass,bootstrap-select,Jquery,Twitter Bootstrap,Select,Toggleclass,Bootstrap Select,所以,我使用的是bootsrap框架,我有一个div,我想根据下拉列表中的某个值来显示和隐藏它。这是我的密码: <label>Injury Prevention Topic</label> <select id="InjuryPreventionTopic" class="selectpicker show-tick"> <option value="Animal Bites">Animal Bites</option>

所以,我使用的是bootsrap框架,我有一个div,我想根据下拉列表中的某个值来显示和隐藏它。这是我的密码:

<label>Injury Prevention Topic</label>

<select id="InjuryPreventionTopic" class="selectpicker show-tick">
    <option value="Animal Bites">Animal Bites</option>
    <option value="Assault">Assault</option>
    <option value="Burns and Scalds">Burns and Scalds</option>
    <option value="Drowning">Drowning</option>
    <option value="falls">Falls</option>
    <option value="Firearms">Firearms</option>
    <option value="Hanging">Hanging</option>
    <option value="Homicide">Homicide</option>
    <option value="Mutilation">Mutilation</option>
    <option value="Not Further Specified">Not Further Specified</option>
    <option value="Poisoning">Poisoning</option>
    <option value="Self-Harm">Self-Harm</option>
    <option value="Sport and Leisure">Sport and Leisure</option>
    <option value="Suicide">Suicide</option>
    <option value="roadaccident">Road Traffic Accidents</option>
</select>

<div id="drop3" class="collapse">
    <label>Falls Sub Category</label>
    <select id="FallsSubCategory" class="selectpicker show-tick">
        <option>Case or Risk Identification</option>
        <option>Exercise, Strength and Balance Training</option>
        <option>Falls Risk Assessment</option>
        <option>General</option>
        <option>Hip Protectors</option>
        <option>Multifactorial Interventions</option>
        <option>Prevention Programmes</option>
        <option>Vitamin D</option>
    </select>
</div>

<script>
    $('#InjuryPreventionTopic').change(function () {
        if ($(this).val() == 'falls') {
            $('#drop3').toggleClass('in');
        }
    });
</script>
我试过几种不同的方法,似乎都不管用。有什么想法吗?

试试这个:

$('#InjuryPreventionTopic').change(function () {
    if ($(this).val() == 'falls') {
        $('#drop3').addClass('in');         
    }
    else{
         $('#drop3').removeClass('in');
    }
});

我认为您需要添加/删除您的类,而不是关闭切换,因为如果该值没有下降,您的drop3元素将继续使用in类


请确认您已经包括jquery 1.11.0 您可以检查JSFIDLE

Here's [JsFiddle](http://jsfiddle.net/fL3ouc0f/) !  

结果证明我的代码没有问题——只是放在我放的地方!我本来把它放在我在VisualStudio中工作的视图上,但是在_布局页面上尝试了一下,它就工作了

代码很好,看看是否包含jquery或notjquery,它在我网站的其余部分工作正常,只是不在这里。这都是在一个手风琴内部,但这不应该阻止它工作检查select的ID是否唯一。是的,搜索了我的整个解决方案,以确保我在其他地方测试了该部分,只是为了确保它与手风琴影响它无关。是的,抱歉,我之前尝试过,也不起作用。我认为问题可能不在于jquery,或者至少不在于它的工作方式:呈现html时出现了一些错误消息?啊,问题解决了!我将脚本移到了我的_布局模板,而不是我正在处理的视图上,并且切换和添加/删除方法都有效:@MichaelBale great:是的,很抱歉我之前尝试过,也不起作用。我认为问题可能不是jquery,或者至少不是这个小片段,从jquery 1.10.2到jquery 1.11.0的更改恐怕没有起到任何作用,而且您的JSFIDLE示例看起来也不起作用。对不起
Here's [JsFiddle](http://jsfiddle.net/fL3ouc0f/) !