如何在Jquery中显示之前更新选择选项?

看看这个示例代码:

    $(document).ready(function(){ $("body").on('click', "#teste",function(){ $('#teste').append('pera') $('#teste').show(); }); });     banana laranja   

我的问题是click事件显示选择框,并且只有在用新值(“pera”)更新它之后。 我需要做的是首先使用新值更新select并且仅在显示之后。 无论如何使用jQuery做到这一点? 先谢谢你,伙计们!

编辑:

好吧,让我试着解释一下:每当你点击一个选择以显示它自动显示它的选项时(很明显!)。 我的问题是我需要拦截click事件,更新select并且只有在显示select之后。 但它在更新之前显示了选择(这是默认行为)。 这是发生的事情:

1)选择初始值:banana,laranja

2)用户点击它。 我想要的:展示香蕉,laranja和pera作为选择。 会发生什么:它显示列表中的banana,laranja,只显示它并且只有在更新了select之后(如果我用fiebug检查html代码,那么pera选项就在那里!)。 如果我在select中再次单击,pera选项会正常显示,并且正如上面的代码所示,它会在select中附加另一个pera选项,该选项仅出现在下一次单击中,依此类推。

我有点困惑..你只是想在页面加载时更新选择吗? 如果是这样,你可以做到:

CSS:

 #teste { display: none; } 

JS:

 $(function(){ $('#teste').append('').val("pera").show(); }); 

我想这可能就是你要找的东西:

使用值:

 $('[name=options]').val( 3 );//To select Blue 

要重置它,请使用:

 $('[name=options]').val( '' ); 

使用文字:

 $('[name=options] option').filter(function() { return ($(this).text() == 'Blue'); //To select Blue }).prop('selected', true); 

链接: http : //forum.jquery.com/topic/how-to-dynamically-select-option-in-dropdown-menu

我想你想要防止多次显示teste选项。