如何检查是否select了一个选项?
$('#mySelectBox option').each(function() { if ($(this).isChecked()) alert('this option is selected'); else alert('this is not'); });  显然, isChecked不起作用。 所以我的问题是什么是正确的方法来做到这一点? 谢谢。 
UPDATE
select选项的更直接的jQuery方法是:
 var selected_option = $('#mySelectBox option:selected'); 
 回答问题.is(':selected')是你正在寻找的东西: 
 $('#mySelectBox option').each(function() { if($(this).is(':selected')) ... 
非jQuery(可以说是最佳实践)的方式是:
 $('#mySelectBox option').each(function() { if(this.selected) ... 
虽然,如果你只是在寻找选定的价值尝试:
 $('#mySelectBox').val() 
如果您正在查找所选值的文本,请执行以下操作:
 $('#mySelectBox option').filter(':selected').text(); 
查看: http : //api.jquery.com/selected-selector/
下次查找重复的SO问题:
获取当前选定的选项或设置选定的选项或如何获得$(这个)在jQuery中select的选项? 或选项[selected = true]不起作用
你可以通过这种方式得到select的选项:
 $('#mySelectBox option:selected')... 
现场演示
 但是,如果你想迭代所有的选项,用this.selected而不是this.isChecked它不存在: 
 $('#mySelectBox option').each(function() { if (this.selected) alert('this option is selected'); else alert('this is not'); }); 
现场演示
更新:
你有很多答案build议你使用这个:
  $(this).is(':selected')好吧,它可以做得更快,更容易与this.selected所以你为什么要使用它,而不是本地DOM元素的方法?! 
 阅读了解 jQuery 标记信息中的DOM属性和函数 
 如果你不熟悉或不熟悉is() ,你可以检查prop("selected") 。 
如这里所见 :
 $('#mySelectBox option').each(function() { if ($(this).prop("selected") == true) { // do something } else { // do something } }); 
编辑 :
正如@gdoron在注释中指出的那样,访问选项的选定属性的更快和最合适的方式是通过DOMselect器。 这里是显示这个动作的小提琴更新 。
 if (this.selected == true) { 
似乎也工作! 谢谢gdoron。
使用
  $("#mySelectBox option:selected"); 
 来testing它是否有一个特定的选项myoption : 
  if($("#mySelectBox option:selected").text() == myoption){ //... } 
在我的情况下,我不知道为什么select总是如此。 所以我能想到的唯一方法是:
 var optionSelected = false; $( '#select_element option' ).each( function( i, el ) { var optionHTMLStr = el.outerHTML; if ( optionHTMLStr.indexOf( 'selected' ) > 0 ) { optionSelected = true; return false; } }); 
如果您只想检查是否select了某个选项,则不需要遍历所有选项。 做就是了
 if($('#mySelectBox').val()){ // do something } else { // do something else } 
 注意:如果你有一个值为0的选项,你可以select,你需要将if条件改为$('#mySelectBox').val() != null