协慌网

登录 贡献 社区

如何删除选择框的所有选项,然后添加一个选项并使用 jQuery 选择它?

使用核心 jQuery,如何删除选择框的所有选项,然后添加一个选项并选择它?

我的选择框如下。

<Select id="mySelect" size="9" </Select>

编辑:以下代码有助于链接。但是,(在 Internet Explorer 中) .val('whatever')没有选择添加的选项。 (我在.append.val中都使用了相同的'value'。)

$('#mySelect').find('option').remove().end().append('<option value="whatever">text</option>').val('whatever');

编辑:试图让它模仿这个代码,每当页面 / 窗体重置时,我使用以下代码。此选择框由一组单选按钮填充。 .focus()更接近,但该选项似乎没有像.selected= "true"那样被选中。我现有的代码没有任何问题 - 我只是想学习 jQuery。

var mySelect = document.getElementById('mySelect');
mySelect.options.length = 0;
mySelect.options[0] = new Option ("Foo (only choice)", "Foo");
mySelect.options[0].selected="true";

编辑:选择的答案接近我需要的。这对我有用:

$('#mySelect').children().remove().end().append('<option selected value="whatever">text</option>') ;

但这两个答案都让我得到了最后的解决方案..

答案

$('#mySelect')
    .find('option')
    .remove()
    .end()
    .append('<option value="whatever">text</option>')
    .val('whatever')
;
$('#mySelect')
    .empty()
    .append('<option selected="selected" value="whatever">text</option>')
;

为什么不只是使用普通的 JavaScript?

document.getElementById("selectID").options.length = 0;