2012-08-28 75 views
3

第一个选项元素后选择框中我有以下选项添加新的元素使用JQuery

<select id="history"> 
    <option></option> 
    <option>element1</option> 
    <option>element2</option> 
    <option>element3</option> 
    <option>element4</option> 
</select> 

我想第一个选项后添加一个新的选项的组合框。什么是最好的最有效的方法来完成这个我试过

<script type="text/javascript"> 
    $("#history").prepend("<option>sdsadas</option>").after('#history:first-child'); 
    $("<option>asdsad</option>").insertBefore('#history option:first-child'); 
// $('option[value="sadsaddsad"]', this).after('option:first'); 
</script> 

但这些都没有工作,因为我想。

回答

7

你可以这样说:

$("#history option:first").after("<option>sdsadas</option>"); 

这得到第一<option>标签,然后后插入一个新的选择。


jQuery支持两种插入方式。上述版本是target.after(content),这另一种方式是content.insertAfter(target)

$("<option>sdsadas</option>").insertAfter("#history option:first"); 

注:One使用.after()和其他用途.insertAfter()

+0

http://jsfiddle.net/GdQKp/ – elclanrs

0

使用以下命令:

$("<option>asdsad</option>").insertBefore($('#history option:first-child')); 

相反的:

$("<option>asdsad</option>").insertBefore('#history option:first-child'); 
+2

这根本不对。 – sQVe