1

我无法删除选择的选项我做错了什么?

这是在控制台中完成的

[
<select class=​"engclass">​…​&lt;/select>​
]
$(".engclass").removeAttr('selected').val("Application # 1").attr('selected',true);
[
<select class=​"engclass" selected=​"selected">​
<option value=​"-1" selected>​Choose application​&lt;/option>​
<option value=​"1">​Application # 1​&lt;/option>​
<option value=​"2">​Application # 2​&lt;/option>​
<option value=​"3">​Application # 3​&lt;/option>​
</select>​
4

4 回答 4

2

使用.prop()代替.attr()and .removeAttr()

此外,您必须在<option>s 而不是<select>本身上使用它..工作 jsFiddle

$(".engagement_app option:first-child").prop('selected',true); // select first
$(".engagement_app option:first-child").prop('selected',false); // deselect first
于 2013-07-29T13:23:49.573 回答
1

你可以使用这个:

$(".engclass").removeAttr('selected')
                    .find(":contains('Application # 1')")
                    .prop('selected',true);

http://jsfiddle.net/U73Ru/

于 2013-07-29T13:29:02.650 回答
0

你应该试试这个:

$(".engagement_app option").removeAttr('selected');
$(".engagement_app option[value="1"]").attr('selected',true);
于 2013-07-29T13:27:39.247 回答
0

您不能selected从 a 中删除该属性,select因为它必须始终具有 1 个选定选项。相反,您只需将 设置为val您要选择的元素。尝试这个:

$(".engagement_app").val("1"); // should select​ Application # 1
于 2013-07-29T13:26:29.753 回答