1

ドロップダウンリスト/オプションの値にjsonオブジェクトを入れています

<select>
    <option value="{a:'1',b:'11'}">a</option>
    <option value="{a:'2',b:'12'}">b<option>
    <option value="">c</option>
    <option value="">d</option>
</select>

選択したアイテムの値にアクセスするにはどうすればよいですか?

var s = {};
$('select').change(function(){
    s = $(this).val();
    alert (s.a);
});

http://jsfiddle.net/uzCm9/

4

1 に答える 1

2

まず、値をキャッシュする習慣を身につける必要があります。これは、$() を頻繁に実行するとパフォーマンスが低下するためです。

ここが重要だと言っているわけではありません。しかし、それは Twitter の人々が何度も苦労して学んだことです。

多くの結果を扱っている場合、または多くの変更を扱っている場合は、アイテムのリストを変数に保存するか、操作する要素を保存します。

ともかく...

var json = $(this).value, obj = $.parseJSON(json);

do_awesome_thing(obj.a);
于 2012-07-17T07:57:09.543 に答える