2015-07-15 3 views
4

У меня есть форма с одним текстовым вводом и одним элементом select2 (версия 4.0.0). Я хочу, чтобы при фокусировке на ввод текста, select2 open.Select2 open dropdown on text text input

Вот что я пробовал:

<select list="userAccountsMap.values" listKey="accountNo" listValue="accountNo"/> 
<input id="destinationAccount" type="text" name="destinationAccount"> 

<script type="text/javascript"> 

('select').each(function(index) { 
     $(this).select2(); 
    } 
}); 

$("#destinationAccount").focus(function() {  
    $("select").trigger('select2:open'); 
}); 

</script> 

Но это не работает. См. Скрипку здесь: http://jsfiddle.net/Hatamikhah/73wypp1w/1/

Я не понимаю, в чем моя проблема.

ответ

3

Они объяснили, как открыть раскрывающийся список.

Адрес документации:https://select2.github.io/examples.html и, пожалуйста, проверьте раздел Programmatic access.

HTML Часть:

<select id="e1"> 
    <option value="volvo">Volvo</option> 
    <option value="saab">Saab</option> 
    <option value="mercedes">Mercedes</option> 
    <option value="audi">Audi</option> 
</select> 
<br> 
<br> 
<input type="text" id="nameID" name="firstname"> 

JQuery часть:

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

// With change event 
$("input").on("change", function() { 
    $("#e1").select2("open"); 
}); 

// With focus event 
$("input").focus(function() { 
    $("#e1").select2("open"); 
}); 

Попробуйте этот пример с OnChange событие: http://jsfiddle.net/mananpatel/73wypp1w/5/

Позвольте мне знать, если вам нужна помощь :)

+1

Я не думаю, что это работает – cr0ss

+0

работает очень хорошо. большой –

0

Над кодом работы, но мало изменений там

изменения этого кода $ ("вход") на ("изменение", функция() { $ ("# e1") выбор2 ("открытое")..; });

этому коду, то вы можете сделать эту функцию

$("input").on("click", function() { 
    $("#e1").select2("open"); 
});