1

我有一个充满选择的页面,它们都有一个共同的类。我需要将它们中的每一个都设置为他们的第一个选项。容易,对吧?但是我最终开始工作的感觉就像一个黑客......有没有更好的方法?

$('.myclass').each(function() {
    var firstOptSelector = '#' + $(this).attr('id') + ' option:first'; // HACK
    $(firstOptSelector).attr('selected','selected');
});
4

6 回答 6

2

尝试如下,

$('.myclass').each(function() {
   this.selectedIndex = 0;
});

演示:http: //jsfiddle.net/ZDYjP/

于 2012-06-01T17:13:15.790 回答
2

这个短的怎么样?

​$(".myclass :first-child").prop("selected", true);​​​​​​​​​

演示:http: //jsfiddle.net/u8S54/

于 2012-06-01T17:15:37.950 回答
1

像这样做:

$('.myclass').each(function() {
    $(this).find('option:first').attr('selected','selected');
});
于 2012-06-01T17:14:17.347 回答
0

您不需要使用每个。这是一个例子

​$('.select').find('option:first').prop('selected', true );
于 2012-06-01T17:17:07.740 回答
0
$("option:first", ".myselect").prop('selected', true);

工作样本

于 2012-06-01T17:24:32.343 回答
0

如果您删除选定的属性,则默认情况下第一个是显示的。

$('.myclass').find('option:selected').removeAttr("selected");
于 2012-06-01T18:18:48.440 回答