jquery选择删除项目

时间:2011-12-07 14:44:14

标签: jquery select

我的HTML代码

<select name="test[]" id="test_0">
    <option value="">...</option>
    <option value="Test 1">Test 1</option>
    <option value="Test 2">Test 2</option>
    <option value="Test 3">Test 3</option>
</select>
<select name="test[]" id="test_1">
    <option value="">...</option>
    <option value="Test 1">Test 1</option>
    <option value="Test 2">Test 2</option>
    <option value="Test 3">Test 3</option>
</select>

我的jquery代码

$("#test_0 option:eq(1)").remove();
$("#test_1 option:eq(2)").remove();

如果我删除某个项目,如何将其保留在内存以便稍后替换 在同一个地方

感谢您的帮助......

克里斯

4 个答案:

答案 0 :(得分:3)

使用。detach代替它,它更适合稍后重新插入元素,因为它保留了附加到元素的数据和事件。

 var option =  $("#test_0 option:eq(1)").detach();
  $('#test_0').append(option); 

答案 1 :(得分:0)

你可以隐藏它:

 $("#test_0 option:eq(1)").hide();
 $("#test_1 option:eq(2)").hide();

但我不确定它适用于所有浏览器。否则你可以克隆它并将其保存在变量中,然后将其删除:

var option1 = $("#test_0 option:eq(1)").
var option1clone = option1.clone();
//now remove the original
option1.remove

答案 2 :(得分:0)

您可以使用除以下选项之外的所有其他选项:

$("#test_0 option.not(':eq(1)').remove();

答案 3 :(得分:-1)

您可以隐藏它们并在以后需要时显示:

$("#test_0 option:eq(1)").hide();
//and for showing
$("#test_0 option:eq(1)").show();