使用jQuery更改选项的文本

如何使用jQuery更改选项的文本?

我想在一个选项中使用Oldest更改Newest是一个元素。

 $('select option:contains("Newest")').changeText('Oldest'); 

.replaceWith对我不起作用。

谢谢。

—- —-更新

如果我的脚本如下所示:

 $('select option:contains("Newest")').text('Oldest'); $('select option:contains("Oldest")').text('Newest'); 

然后我取消了第一个脚本,但这不是我想要的。 我有两个选项,一个是“Newest”,我想用“Oldest”替换,另一个是“Oldest”,我想用“Newest”替换。 我怎么能做到这一点?

你应该开始一个新问题,但这里是答案:

 $('select option:contains("Newest")').text('TEMPEST'); $('select option:contains("Oldest")').text('Newest'); $('select option:contains("TEMPEST")').text('Oldest'); 
 $("#mySelect option").html(function(i,str){ return str.replace(/Newest|Oldest/g, // here give words to replace function(m,n){ return (m == "Newest")?"Oldest":"Newest"; // here give replacement words }); }); 

演示: http : //jsfiddle.net/diode/eSa5p/2/

 $('select option:contains("Newest")').each(function(){ var $this = $(this); $this.text($this.text().replace("Newest","Oldest")); });​ 

http://jsfiddle.net/eSa5p/

编辑:回答新问题:

 var $newest = $('select option:contains("Newest")'); $('select option:contains("Oldest")').text('Newest'); $newest.text('Oldest'); 

http://jsfiddle.net/eSa5p/3/

 $('select option:contains("Newest")').addClass('changeToOldest'); $('select option:contains("Oldest")').addClass('changeToNewest'); $('.changeToOldest').text('Oldest').removeClass('changeToOldest'); $('.changeToNewest').text('Newest').removeClass('changeToNewest'); 

更改所选选项的文本:

$( “#选择”)找到( “选项:选择”)文本( ‘最新’);