1
HTML:
<select id="list">
    <option value="A">Alpha</option>
    <option value="B">Bravo</option>
    <option value="D">Delta</option>
</select>

jQuery:
$("#list").append("<option value=\"C\">Charlie</option>");

有什么简单的方法可以在 B 和 D 之间获得选项 C?

4

4 回答 4

0

你可以使用insertAfter()

$("<option value=\"C\">Charlie</option>").insertAfter('#list > option[value="B"]');

...或insertBefore()

$("<option value=\"C\">Charlie</option>").insertBefore('#list > option[value="D"]');

这是一个小提琴

于 2013-05-29T10:39:18.550 回答
0
$("option[value='B']").after("<option value=\"C\">Charlie</option>");

官方文档中的 after() 和 insertAfter() 中的更多信息(两者都采用不同的方式执行相同的操作)。

于 2013-05-29T10:39:31.060 回答
0

尝试使用before()

$("#list option[value=D]").before("<option value='C'>Charlie</option>");

这将在 optionCharlie之前插入由参数指定的新 option Delta

于 2013-05-29T10:40:05.847 回答
0

您可以尝试使用属性选择器:

$("<option value=\"C\">Charlie</option>").insertAfter($('#list option[value*="B"]'));

小提琴

于 2013-05-29T10:46:48.773 回答