2013-04-30 121 views
4

获取文本我有一个像选择二jQuery的 - 如何选择框

<input type="hidden" name="xa" id="xa" data-placeholder=".." style ="width: 360px;"/> 

输入文本并使用选择2

$("#xa").select2({...}); 

我现在,我想文本当我按下“获取文本”

$("#gettext").click(function() { 
    alert($('#xa').val()); // or $('#xa').select2("val"); 
}); 

但它得到了文本的id。这不是文字。我该怎么做。感谢

+0

什么你是说当你说“它获得文本的ID”。这不是文字“?究竟是什么回来? – eliah 2013-04-30 13:41:19

回答

4

Select2创建内部目的data-属性,是它存储就像id一些必要的信息,select2实例selected value。这可以用来提取selected value

Select2 Community:作为select2组件实例化的每个元素都必须包含id和文本键。 。

变种ID = $ (测试).select2( '数据')的id;

var seletedVal = $(test).select2('data')。text;

更新:随着选择二的最新版本,对象存储在阵列中,因此文本具有如下(jsfiddle link updated as well)进行访问。

$(test).select2('data')[0].text //而不是$(测试).select2( '数据')。文字

感谢更新@DiMono

Live Demo @ JSFiddle

编码快乐:)

+0

对不起,但我想要获取文本时,我点击按钮? – DeLe 2013-04-30 13:38:16

+3

好吧,我想这可以帮助http://jsfiddle.net/platypusman/xDUUg/ – dreamweiver 2013-04-30 13:47:58

+0

谢谢你,它的工作很好:) – DeLe 2013-04-30 16:41:07

12

你可以通过以下方式获取当前选定项目的文本值:

$('#id').select2('data').text 
+3

这应该是接受的答案 – pymarco 2013-11-08 17:36:04