JavaScript,jQuery - 在下拉列表中检索项目名称

时间:2014-06-12 19:17:41

标签: javascript jquery ruby-on-rails

我正在尝试弄清楚如何获取所选产品的名称label_method: :name,如表单中所示。我可以检索所选项目的ID,如js部分所示。

_form.html.erb

<%= f.simple_fields_for :items, wrapper: false do |builder| %>

<%= builder.input :product_id, collection: Product.all, 
    label_method: :name, value_method: :id, label: false, 
    placeholder: 'Type or select item', input_html: { :multiple => true, 
    id: 'select2-product' } %>

JS

$("#select2-product").click(function() {
 var selectedItem = $(this);
 console.log("selectedItem " + selectedItem);
 console.log("selectedItem.val() " + selectedItem.val());
});

控制台输出

 selectedItem [object Object] 
 selectedItem.val() 1 

观察

selectedItem.val()给出了下拉列表中所选元素的ID:

selectedItem.text()提供下拉列表中的所有项目。我怎样才能选择一个?由@Amir回答

1 个答案:

答案 0 :(得分:2)

这应该有用,实际上你需要选择text而不是value,所以text()可以获得商品的实际文字

console.log("selectedItem.text() " + selectedItem.text());

<强> Live demo

$('selectedItem:selected').text() for the selected text specifically