2011-07-07 5 views
1

私はASP.NET MVC 3とjQuery 1.5で作業しています。jQueryのval(value)はドロップダウンボックス(水中)で選択した値をどのように設定しますか

どこかに私のコードでは、私はそうのようなdropdownboxの選択した値に設定するのjQueryを使用します。

$("#SelectedFilterOption").val(filterOption) 

filterOptionは、オプションフィールドの値ではなく、テキストです。私の画面では正しい値が選択されていますが、htmlを見ると、selected属性を持つオプション要素は表示されません。これらの値をASP.NET MVC 3アプリに投稿すると、どのような値が選択されているかを「彼ら」はどのように知っていますか?

編集:
$("#SelectedFilterOption").val()
が正しい値を返しません。また、私は、ASP.NET MVCから最初の選択された値を設定すると、その要素になり、selected属性を取得することに気付きました。 selecte dattributeは、手動で別のオプションを選択した場合でも、htmlのフィールドにとどまります。

私は火かき棒(クロムとIE9ツールに加えて)でこれを調べます。

+0

Firebugを使ってhtmlを見ましたか?それを使用しない場合、実行時にhtmlコードを使用することができます。 – reporter

+0

私はクロムとIE9のDOMインスペクタを使用しました(IE9ではリフレッシュhtmlを押しました) –

答えて

2

この値を持つ最初の項目のインデックスを検索します。

インデックスを持つ場合は、DOM経由の<select>.selectedIndex=targetIndexNumberプロパティを使用します。 HTMLを編集する必要はありません。一部のブラウザはそれ自体を行い、他のブラウザは気にしません。

+0

Ahaとその値がポストされます。 jQueryを使用して 'selected'属性を' val() 'の代わりに特定のオプションに追加するとどうなりますか?正しい値がまだ転記されますか? –

+1

@Matthijs、オプションに 'selected'を加えることは同じ効果を持ちます。それはすべてのニーズと目的のためにそのオプションを選択します.. –

関連する問題