CSS选择:禁用不工作

CSS选择:禁用不工作,css,Css,我有下一个功能: changeStateSelect() { if ($('#idAsignaturaGlobal').prop('checked')) { $('#idAsignatura').prop('disabled', true); $('#idAsignatura').prop('required', false); } else { $('#idAsignatura').prop('disabled', false);

我有下一个功能:

changeStateSelect() {
    if ($('#idAsignaturaGlobal').prop('checked')) {
        $('#idAsignatura').prop('disabled', true);
        $('#idAsignatura').prop('required', false);
    } else {
        $('#idAsignatura').prop('disabled', false);
        $('#idAsignatura').prop('required', true);
    }
}
下一个CSS:

.form-horizontal select:disabled {
    cursor: not-allowed !important;
    background-color: red !important;
    border-color: red !important;
}
但它不起作用。我尝试用.css将其添加到函数中,但都没有。。。我不明白为什么会发生这种事。。。为什么会这样?。多谢各位

编辑:这是我的HTML代码(是React JS+Bootstrap)


Asignatura:
阿西纳图拉感染率

编辑:我添加了您的实际问题

你的问题是:

<input type="checkbox" name="nAsignaturaGlobal" id="idAsignaturaGlobal" onChange={this.changeStateSelect} value="true"/>
。窗体水平选择:禁用{
光标:不允许!重要;
背景色:红色!重要;
边框颜色:红色!重要;
}

Asignatura:
阿西纳图拉感染率

禁用是真是假并不重要。如果属性在那里,它就被禁用了。问题是,指针和指针都不会显示红色。这就好像禁用了不存在一样。我试图将prop disabled放入其他select(没有changeStatus)中,但都没有显示CSS。您也需要发布HTML来判断您的选择器是否正确。请发布您的标记,以便我们了解您当前的问题谢谢。但问题是,我的select不改变颜色(不显示红色,如果它不接受CSS,就好像标记是错误的)。谢谢。@JuMoGar很抱歉我没意识到。我添加了一个新的演示来解决您的问题。您使用的是
onChange
,而不是
onChange
。检查演示以查看它是否正常工作。@JuMoGar您还有
onchange=“this.changeStateSelect”
,我将其更改为
onchange=“changeStateSelect()”
是的,对不起。我把它抄坏了。在ReactJS onchange=onchange中,如果没有,则会出现错误,无法工作。和“()”也被删除了。“我的选择”似乎已被禁用,正如您的示例中所示,它正在工作,但它不应用我的样式,而是应用默认样式。@JuMoGar我很难理解。我添加了ReactJS并将其更改为onChange,正如您在编辑的演示中看到的,它可以正常工作。你的代码与现在的演示有什么不同,为什么我在演示中的代码不适合你?
<input type="checkbox" name="nAsignaturaGlobal" id="idAsignaturaGlobal" onChange={this.changeStateSelect} value="true"/>