我想阻止用户删除我选择的下拉菜单中的预选选项(多个)。
<select data-placeholder="Your Favorite Types of Bear" multiple class="chosen-select" tabindex="8">
<option value=""></option>
<option>American Black Bear</option>
<option>Asiatic Black Bear</option>
<option>Brown Bear</option>
<option>Giant Panda</option>
<option selected>Sloth Bear</option>
<option selected>Sun Bear</option>
<option selected>Polar Bear</option>
<option selected>Spectacled Bear</option>
</select>
因此,我希望选择“懒熊”,“太阳熊”,“北极熊”和“眼镜熊”,而用户无法删除它。我该怎么办?
答案 0 :(得分:1)
我认为没有官方的方法可以做到这一点。
但是,让我给您一个想法。
像这样定义您的select
项。
<select data-placeholder="Your Favorite Types of Bear" multiple class="my_select_box" tabindex="8">
<option value=""></option>
<option value="1">American Black Bear</option>
<option value="2">Asiatic Black Bear</option>
<option value="3">Brown Bear</option>
<option value="4">Giant Panda</option>
<option value="5" disabled selected>Sloth Bear</option>
<option value="6" disabled selected>Sun Bear</option>
<option value="7" disabled selected>Polar Bear</option>
<option value="8" disabled selected>Spectacled Bear</option>
</select>
我看起来像这样,
因此,现在用户无法删除所选的选项。
但是,在检索选定的值时,请确保要添加这样的选定值。
var selected = $(".my_select_box").val();
var alreadySelected = ['5', '6', '7', '8']
var totalSelected = selected.concat(alreadySelected);
现在,准备好了!你可以玩。
答案 1 :(得分:0)
据我所知,没有完美的方法。但是,作为一种解决方法,您可以尝试禁用要阻止的选项,以使它们无法修改其可见性。
您可以尝试以下代码:
<select data-placeholder="Your Favorite Types of Bear" multiple class="chosen-select" tabindex="8">
<option value=""></option>
<option>American Black Bear</option>
<option>Asiatic Black Bear</option>
<option>Brown Bear</option>
<option>Giant Panda</option>
<option disabled>Sloth Bear</option>
<option disabled>Sun Bear</option>
<option disabled>Polar Bear</option>
<option disabled>Spectacled Bear</option>
</select>