我有一个选择下拉列表,但选项很少。当我尝试使用jquery选择一个选项时,我在html源代码中看到,所选选项有" selected = selected"作为属性。
当我尝试通过jquery选择另一个选项时,它还添加了选项" selected = selected"作为属性。
但它在html源代码中添加了2个选项。我尝试通过代码删除选定的选项,但它从未奏效。
如何删除下拉列表中所有选项的selected = selected属性?
我尝试了以下选项,但没有任何效果
$('select[id^="myDropdown"]').find('option:selected').removeProp("selected");
$('select[id^="myDropdown"]').find('option:selected').removeAttr("selected");
$('select[id^="myDropdown"]').removeAttr('selected');
$('select[id^="myDropdown"] option:selected').removeAttr('selected');
$('select[id^="myDropdown"] option:selected').removeProp('selected');
$('select[id^="myDropdown"] option:selected').prop('selected',false);
基本Jquery代码
$(document).on("click", ".list-group a", function () {
var selected = $(this).text();
});
HTML
<div class=".list-group">
<a id="clickMeTOSelectOption">test 1</a>
<a id="clickMeTOSelectOption">test 2</a>
<a id="clickMeTOSelectOption">test 3</a>
</div>
答案 0 :(得分:1)
基本<select>
元素
基本<select>
菜单始终只选择一个选项。通过选择其他选项可以取消选择所选选项。
这可以通过jQuery实现如下......
$('#mySelect').val('someValue');
...或POJS如下:
mySelectElemlent.selectedIndex = 3; // some zero-based index
<强> DEMO 强>
<select multiple>
元素
<select multiple>
菜单的行为有所不同。其选择的选项可以独立于其他选项进行选择/取消选择。
$('#mySelectMultiple option').eq(1).prop('selected', false);
$('#mySelectMultiple option').eq(3).prop('selected', true);
<强> DEMO 强>
注意:使用基本<select>
,.prop('selected', false);
的效果不确定(未指定)。在大多数(可能是所有)浏览器中,将选择第一个(第0个)选项。
答案 1 :(得分:1)
您的代码中存在一些错误。
var select = $('#myDropdown');
select.children('option').prop('selected',false);
select.selectpicker('refresh');
我没有尝试代码。如果有任何错误,请返回。
答案 2 :(得分:0)
我尝试迭代所有下拉选项并删除该属性。感谢每一个人的帮助。
$("#myDropDown > option").each(function () {
this.removeAttribute("selected");
});