更改选定禁用选项的文本颜色
Changing the text colour of a selected disabled option
我有以下代码:
select option:disabled:checked {
color: grey;
}
<select>
<option selected disabled>Initial Option</option>
<option>One</option>
<option>Two</option>
</select>
它 成功 select 正确的元素 。但是,问题是:我想在 selected 时更改禁用选项文本的颜色(这是我们第一次加载页面时)。目前,当我在下拉列表 select 列表 中 select 另一个选项时,我只能看到我应用的 grey
颜色。我希望初始 selected 颜色为 grey
以指示用户仍然必须选择另一个选项。我怎样才能做到这一点?
试试这个:
.checked {
color:green
}
<select>
<option style="color:grey">Initial Option</option>
<option class="checked">One</option>
<option class="checked">Two</option>
</select>
我添加了 jQuery 以将 class 添加到所选选项中。试试这个:
function selectOption() {
var x = $('#select-dropdown').val()
$('#select-dropdown option[value='+ x+']').attr("selected", true).attr("disabled", true)
}
select option:disabled:checked {
color: grey;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="select-dropdown" onChange="selectOption()">
<option selected disabled>Initial Option</option>
<option value="One">One</option>
<option value="Two">Two</option>
</select>
这是我对你的问题的想法,试试这个
$(document).ready(function(){
$('#MySelect').val('Zero').change();
});
$('#MySelect').on('change',function(){
$($(this)).css("color", $(this).find("option").css('color','black'));
var color = $(this).find("option[value="+$(this).val()+"]").attr('optioncolor');
$($(this)).css("color", color);
$($(this)).css("color", $(this).find("option[value="+$(this).val()+"]").css('color',color));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="MySelect">
<option value="Zero" selected optioncolor="red" >Zero</option>
<option value="One" optioncolor="green">One</option>
<option value="Two" optioncolor="yellow">Two</option>
</select>
我有以下代码:
select option:disabled:checked {
color: grey;
}
<select>
<option selected disabled>Initial Option</option>
<option>One</option>
<option>Two</option>
</select>
它 成功 select 正确的元素 。但是,问题是:我想在 selected 时更改禁用选项文本的颜色(这是我们第一次加载页面时)。目前,当我在下拉列表 select 列表 中 select 另一个选项时,我只能看到我应用的 grey
颜色。我希望初始 selected 颜色为 grey
以指示用户仍然必须选择另一个选项。我怎样才能做到这一点?
试试这个:
.checked {
color:green
}
<select>
<option style="color:grey">Initial Option</option>
<option class="checked">One</option>
<option class="checked">Two</option>
</select>
我添加了 jQuery 以将 class 添加到所选选项中。试试这个:
function selectOption() {
var x = $('#select-dropdown').val()
$('#select-dropdown option[value='+ x+']').attr("selected", true).attr("disabled", true)
}
select option:disabled:checked {
color: grey;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="select-dropdown" onChange="selectOption()">
<option selected disabled>Initial Option</option>
<option value="One">One</option>
<option value="Two">Two</option>
</select>
这是我对你的问题的想法,试试这个
$(document).ready(function(){
$('#MySelect').val('Zero').change();
});
$('#MySelect').on('change',function(){
$($(this)).css("color", $(this).find("option").css('color','black'));
var color = $(this).find("option[value="+$(this).val()+"]").attr('optioncolor');
$($(this)).css("color", color);
$($(this)).css("color", $(this).find("option[value="+$(this).val()+"]").css('color',color));
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="MySelect">
<option value="Zero" selected optioncolor="red" >Zero</option>
<option value="One" optioncolor="green">One</option>
<option value="Two" optioncolor="yellow">Two</option>
</select>