更改<option>元素的内容</option>

时间:2011-01-11 16:35:36

标签: jquery

我有一个select小部件,其中包含几个AJAX增强功能。

<select id="authors">
    <option value="1">Foo Bar</option>
    <option value="2" selected="selected">Bar Baz</option>
</select>

现在,如果所选选项发生变化,我想更改“内容”(示例中的“Foo Bar”和“Bar Baz”)。我怎么能用jQuery做到这一点?我试过以下,但很明显,它不起作用。

$('#authors').change(function(){
    $('#authors option[selected=selected]').html('new content');
});

/ edit:澄清一下,选择器'#authors option[selected=selected]'工作正常,它选择了正确的option DOM元素。但是.html('new content')什么也没做。

第二次编辑:好的,这很尴尬。我在Chrome的JavaScript控制台中尝试了我的代码,它没有任何效果。在jAndy清楚地证明它在jsFiddle中工作之后,我在FireBug控制台中尝试了它,并且它在那里工作。获得的经验: - )

2 个答案:

答案 0 :(得分:5)

尝试:

$('#authors').find('option:selected').html('new content');

示例:http://www.jsfiddle.net/4yUqL/38/

答案 1 :(得分:2)

$("#authors option:selected").html('new content');