在具有相同类的许多中找到一个下拉列表的选定选项

时间:2012-11-21 10:46:51

标签: jquery jquery-selectors

html是

<select class='pay-type' style='width:100%'>
  <option>Credit Card</option>
  <option>Cash</option>
  <option>Credit Note</option>
  option>Gift Voucher</option>
  <option>Cheque</option>
</select>

我通过在新div上插入相同的html来重现此选择。我有一个模块写入,当下拉列表中的选择更改时触发。如何获得onclick函数中精确下拉列表的选定值?以下代码似乎不起作用。

$('.pay-type').change(function(){
  console.log($(this).filter('option :selected'));
}); 

1 个答案:

答案 0 :(得分:2)

您错过了.text()

$('.pay-type').change(function(){
    console.log($(this).filter('option :selected').text()); // to show the text
    console.log($(this).val()); // to show the value
}); 

注意:您的代码中有一些内容。

  1. 选项没有值。虽然不是严格必要的,但优良的做法是拥有它们。如果要在数据库中存储值,则现在只需使用text方法进行存储。
  2. 如果您将第一个option保留为选择付款方式,则用户还可以选择信用卡选项以显示在所选的div中。现在要做同样的事情,用户必须先选择其他东西,然后返回并选择该选项才能看到它