Javascript 如何在开头添加选项?

Javascript 如何在开头添加选项?,javascript,jquery,html-select,Javascript,Jquery,Html Select,我有html选择 <select id="myselect"> <option>1</option> <option>2</option> <option>3</option> </select> 1. 2. 3. 我需要在此选择中添加新选项。 如果我这样尝试: $('#myselect').appendTo($('<option>my-option</

我有html选择

<select id="myselect">
    <option>1</option>
    <option>2</option>
    <option>3</option>
</select>

1.
2.
3.
我需要在此选择中添加新选项。 如果我这样尝试:

$('#myselect').appendTo($('<option>my-option</option>')); 
$('myselect')。附加到($('my-option');
“我的选项”已添加到末尾

<select id="myselect">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>my-option</option>
</select>

1.
2.
3.
我的选择
如何在开头添加选项(作为第一个)? 像这样:

<select id="myselect">
    <option>my-option</option>
    <option>1</option>
    <option>2</option>
    <option>3</option>
</select>

我的选择
1.
2.
3.
使用
prependTo()

$('myselect')。prependTo($('my-option')//打字错误 你可能是这个意思

$('#myselect').prepend($('<option>my-option</option>'));  
$('myselect')。前置($('my-option');

但是你的代码实际上是相反的。这可能是个打字错误。在任何情况下,可用的方法首先是
prepend()
prependTo()
,而不是<代码>追加将参数的内容添加到选择中<代码>追加到将选择追加到参数中指定的元素

其次,也许凭直觉,您可以使用:

$('myselect')。前置($('my-option');

在POJS中,您将使用
insertBefore()
,例如

var select = document.getElementById('mySelect');
var opt = new Option('', 'my-option');
select.insertBefore(opt, select.firstChild);

呵呵,很多人都忽略了“append”的实际定义,我使用了非常类似的东西。我将最后一行更改为:select.insertBefore(opt,select.options[0]);这样做的好处是,您可以在select中的任何位置插入选项,这是我需要做的。另见:
$('#myselect').prepend($('<option>my-option</option>')); 
var select = document.getElementById('mySelect');
var opt = new Option('', 'my-option');
select.insertBefore(opt, select.firstChild);