2016-01-20 3 views
1

Я следующий ввод текстового поля с помощью Выбор2:JQuery Выбор2 значение настройки входного

<div class="col-md-6"> 
    <div class="form-group"> 
     <label for="QRY_Owner"> Owner ID</label> 
     <input id="QRY_Owner" type="text" style="width:100%"> 
     </input> 
    </div> 
</div> 

который setupusing Выбор2 так:

  $("#QRY_Owner").select2({ 
       placeholder: "Owner ID", 
       tags: [], 
       tokenSeparators: [",", " ", ";"], 
       maximumInputLength: 12, 
       selectOnBlur: true, 
       dropdownCssClass: "hiddenSelect2DropDown" 
      }); 

Теперь я хочу, чтобы установить значения по умолчанию для текста вход. Я попытался следующие:

$("#QRY_Owner").select2("val", "test value"); 

и следующее:

$("#QRY_Owner").select2({ 
    tags: ["red", "green", "blue"] 
}); 

и следующее:

$("#QRY_Owner").val("close"); 

Но форма не обновляется и поля ввода пустым. Кроме того, я не получаю никаких ошибок в консоли браузера.

Любые мысли о том, что мне здесь не хватает?

Вот jsfiddle, который показывает мою проблему: https://jsfiddle.net/snehilw/90m8hzpg/

+0

Прежде всего, пожалуйста, исправить ваш '', он не имеет закрывающий тег '' и попытаться запустить ваш код снова – AGE

+1

Выбор2 не для входов это для выпадающих конечно ничего не буду будет отображаться на входе .. также вы не можете пройти («val», «test value»); это не php .. вы должны передавать данные в формате JSON –

+0

Как сказал @IlanHasanov, вы даже можете прочитать его на странице ** [Выбрать 2 на главной странице] (https://select2.github.io/) **. После создания элемента вы можете передавать значения, необходимые вашим входом через JQuery на лету. – AGE

ответ

1

схваченного от JQuery select2 set default value from an option in list?. Просто добавьте:

.select2('val', ['AL', 'WY']) 

jsfiddle

+0

[Обновлено скрипка] (https://jsfiddle.net/90m8hzpg/2/) используется '.select2 ('data', [{id: 0, text: 'story'}, {id: 1, text: 'bug '}, {id: 2, text:' task '}]) ', см. [Создание новых тегов в текстовом поле Select2] (http://stackoverflow.com/questions/19903353/creating-new-tags-in -a-select2-tag-textarea) – Artem

1

Часть проблемы заключается в том, что вы хотите использовать <input> с .select2() где .select2() работает с <select> тегами, как указано в select2 docs.

Ваш JSFiddle - это демонстрация того, что я только что сказал. В противном случае, если вы действительно хотите изменить значение в конце концов, то вам нужно снова использовать функцию .select2 (копировать/вставлять) и заменять атрибут placeholder в нем любым текстом, который вы хотите так:

$(document).ready(function(){ 
    var QRY_Owner = $("#QRY_Owner"); 

    QRY_Owner.select2({ 
    placeholder: "Owner ID", 
    tags: [], 
    tokenSeparators: [",", " ", ";"], 
    maximumInputLength: 12, 
    selectOnBlur: true, 
    dropdownCssClass: "hiddenSelect2DropDown" 
    }); 

    QRY_Owner.select2({ 
    placeholder: "Test text", 
    tags: [], 
    tokenSeparators: [",", " ", ";"], 
    maximumInputLength: 12, 
    selectOnBlur: true, 
    dropdownCssClass: "hiddenSelect2DropDown" 
    }); 
}); 

Имейте в виду, всегда используйте $(document).ready с JQuery, это лучшая практика.

+1

спасибо за помощь !!! – Rookie

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