2013-04-30 2 views
4

У меня есть входной текст какВыбор2 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"); 
}); 

Но он получает идентификатор текста. Это не текст. Как мне это сделать. благодаря

+0

Что вы имеете в виду, когда говорите «он получает идентификатор текста. Это не текст "? Что именно он возвращает? – eliah

ответ

4

Select2 создает атрибут data- для внутренних целей, были он хранит необходимую информацию, как id, selected value из select2 экземпляра. это может использоваться для извлечения selected value.

Select2 Community: Каждый элемент, созданный как компонент select2, должен содержать идентификационные и текстовые клавиши. .

вар ID = $ (тест) .select2 ('данные') Идентификатор;

вар seletedVal = $ (тест) .select2 ('данные') текст.

Обновление: С последней версией выбор2, объект хранится в массиве, поэтому текст должен быть доступен, как показано ниже (jsfiddle link updated as well).

$(test).select2('data')[0].text // вместо $ (тест) .select2 ('данные'). Текст

спасибо за обновление @DiMono

Live Demo @ JSFiddle

Счастливый Coding :)

+0

извините, но я хочу получить текст, когда я нажимаю кнопку? – DeLe

+3

ОК, я думаю, это может помочь http://jsfiddle.net/platypusman/xDUUg/ – dreamweiver

+0

спасибо, он работает хорошо :) – DeLe

12

Вы можете получить текстовое значение для выбранного элемента:

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

Это должен быть принятый ответ – pymarco

Смежные вопросы