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

新手上路,请多包涵

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

我的选择框如下。

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

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

$('#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>') ;

但是这两个答案都让我找到了最终的解决方案..

原文由 Jay Corbett 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 614
2 个回答
$('#mySelect')
    .find('option')
    .remove()
    .end()
    .append('<option value="whatever">text</option>')
    .val('whatever')
;

原文由 Matt 发布,翻译遵循 CC BY-SA 2.5 许可协议

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

原文由 Mahzilla 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题