1

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>

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

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

1 回答 1

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. 如果您将第一个保留optionSelect a payment method,则用户还可以选择Credit card选项以显示在所选 div 中。现在要做同样的事情,用户必须先选择其他东西,然后返回并选择该选项以查看它
于 2012-11-21T10:49:18.500 回答