【发布时间】:2019-09-17 09:03:57
【问题描述】:
如果选择的选项是 jQuery 的第一个(占位符),我已经成功地为我的正常选择元素应用了不同的样式:
<script type="text/javascript">
$(document).ready
(
function ()
{
$('select').each(function (index, value)
{
if($(this).val()==="")
{
$(this).css('font-style', 'italic');
$(this).css('color', '#636c72');
$(this).children().css('font-style', 'normal');
}
else
{
$(this).css('font-style', 'normal');
$(this).css('color', 'black');
$(this).children().css('font-style', 'normal');
}
});
}
);
</script>
但是,我的一些表单正在使用 bootstrap-select 组件,因为它们包含大量的条目(可能有数千个),并且有必要通过文本搜索来缩小条目的范围。这些组件会产生更复杂的 HTML,上面的代码根本不起作用。
我正在尝试找到一种方法来应用与我的正常选择相同的逻辑:如果选择的选项是第一个,则将输入设置为斜体并使用不同的颜色。以下是此类选择的示例:
<select class="form-control selectpicker" id="medFilter" name="medFilter" th:value="${medFilter}"
onchange="this.form.submit()" data-live-search="true" title="Select Med">
<option value="">Search Med</option>
<option th:each="med : ${meds}" th:value="${med.id}"
th:text="${med.toString()}" th:selected="${med.id == medFilter}">
</option>
</select>
有没有人能够做到这一点?
【问题讨论】:
-
为什么不用 CSS 做这一切?
标签: jquery html css placeholder bootstrap-select