10

重複の可能性:
jQueryはドロップダウンリストから選択されたテキストを取得します

<select id="id_deals" name="deals" multiple="multiple">
  <option value="1">deal 2</option>
  <option value="2">deal 1</option>
</select>

jqueryを使用すると、次のように選択したアイテムの値を取得できます。

var selected = $(e.target).val();

>> 2

しかし、驚くべきことに、実際に選択されたテキスト(たとえば、取引1)を取得しようとすると、両方のエントリが表示されます。

var selected_text = $(e.target).text();

>> "\ndeal 2\ndeal 1\n"

それはなぜですか。また、選択したエントリのテキストも取得するにはどうすればよいですか。

4

2 に答える 2

7

jQueryの「text()」メソッドは、選択した要素の内部テキストを返します。あなたの場合、selectタグ全体を選択しているので、その中のすべてのテキストが表示されます(ネストされたタグ自体を除く)。代わりに、以下を使用してください。

$("#yourdropdownid option:selected").text();

これを参照してください:jQueryを使用してドロップダウンリスト(選択ボックス)から選択したテキストを取得します

于 2012-07-20T15:41:17.283 に答える
0

e.Targetには選択リストが含まれています!これが、を呼び出すときに両方のオプションのテキストを取得する理由ですtext()。を呼び出すとval()、選択リストの値が取得されます。これは、オプションの1つの値です。

于 2012-07-20T15:42:53.160 に答える