web-dev-qa-db-ja.com

IE9でJQueryを使用して選択ボックスのデフォルト値を設定するにはどうすればよいですか?

次の選択ボックスがあります。

<select id="selId">
     <option id='1' value='1'>1</option>
     <option id='2' value='2'>2</option>
     <option id='3' value='3'>3</option>
     <option id='4' value='4'>4</option>
     <option id='5' value='5'>5</option>
</select>

Jqueryでは、選択ボックスで値2を選択するために次のことを行っています。

...
$("select#selId").find("option#2").attr("selected", "selected");
...

同じコードで、IE8とFirefoxの選択ボックスに値2を設定します。しかし、IE9では機能しません。

JQuery1.6.1バージョンを使用しています

9
User 1034

selected属性を設定する代わりに、.val( "2")を使用してください。

ここを参照してください: jsFiddle

19
DavidGouge

とにかく、"SELECTED"属性を維持したい場合、これはIE9でうまく機能しました

$("select#selId").find("option#2").attr("selected", true);

http://jsfiddle.net/cqENs/

5
VAShhh

val() を使用して、代わりにオプションを設定できます jQueryを使用してドロップダウンリストの選択した値を変更する を参照してください。

2
andyb

これを変更します

$("select#selId").find("option#2").attr("selected", "selected");

これに

$("select#selId").find("option#2").attr("selected", true); 
1
Vivek