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

孤街浪徒 提交于 2020-08-13 04:32:48

问题:

Using core jQuery, how do you remove all the options of a select box, then add one option and select it? 使用核心jQuery,如何删除选择框的所有选项,然后添加一个选项并选择它?

My select box is the following. 我的选择框如下。

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

EDIT: The following code was helpful with chaining. 编辑:以下代码有助于链接。 However, (in Internet Explorer) .val('whatever') did not select the option that was added. 但是,(在Internet Explorer中) .val('whatever')没有选择添加的选项。 (I did use the same 'value' in both .append and .val .) (我在.append.val中都使用了相同的'value'。)

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

EDIT: Trying to get it to mimic this code, I use the following code whenever the page/form is reset. 编辑:试图让它模仿这个代码,每当页面/窗体重置时,我使用以下代码。 This select box is populated by a set of radio buttons. 此选择框由一组单选按钮填充。 .focus() was closer, but the option did not appear selected like it does with .selected= "true" . .focus()更接近,但该选项似乎没有像.selected= "true"那样被选中。 Nothing is wrong with my existing code - I am just trying to learn jQuery. 我现有的代码没有任何问题 - 我只是想学习jQuery。

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

EDIT: selected answer was close to what I needed. 编辑:选择的答案接近我需要的。 This worked for me: 这对我有用:

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

But both answers led me to my final solution.. 但这两个答案都让我得到了最后的解决方案..


解决方案:

参考一: https://stackoom.com/question/CRM/如何删除选择框的所有选项-然后添加一个选项并使用jQuery选择它
参考二: https://oldbug.net/q/CRM/How-do-you-remove-all-the-options-of-a-select-box-and-then-add-one-option-and-select-it-with-jQuery
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!