jQuery select2获取select标记的值?

你好朋友,这是我的代码:

<select id='first'> <option value='1'> First </option> <option value='2'> Second </option> <option value='3'> Three </option> </select> 

这是我的select2代码:

 $("#first").select2(); 

以下是获取选定值的代码。

 $("#first").select2('val'); // It returns first,second,three. 

这是返回一个文本,像first,second,three ,我想获得1,2,3
意思是我需要select框的值,而不是文本。

 $("#first").val(); // this will give you value of selected element. ie 1,2,3. 

要获得Select元素,您可以使用$('#first').val();

获取选定值的文本 – $('#first :selected').text();

你可以请你发布你的select2()函数代码

$("#first").select2('data')将返回所有数据作为映射

这个解决scheme可以让你忘记select元素。 当你在select元素上没有ID的时候很有帮助。

 $("#first").select2() .on("select2:select", function (e) { var selected_element = $(e.currentTarget); var select_val = selected_element.val(); }); 

如果您正在使用ajax ,您可能希望在select之后获得select的更新值

 //Part 1 $(".element").select2(/*Your code*/) //Part 2 - continued $(".element").on("select2:select", function (e) { var select_val = $(e.currentTarget).val(); console.log(select_val) }); 

积分:Steven-Johnston

看到这个小提琴 。
基本上,你想得到你的option -tags的value ,但是你总是试图用$("#first").val()来获得你select节点的值。

所以我们必须select选项标签,我们将使用jQuerysselect器:

 $("#first option").each(function() { console.log($(this).val()); }); 

$("#first option")select每个option ,它是id为first元素的子元素。

尝试这个 :

 $('#input_id :selected').val(); //for getting value from selected option $('#input_id :selected').text(); //for getting text from selected option