在焦点文本输入上选择2打开下拉列表

时间:2015-07-15 06:45:44

标签: jquery jquery-plugins jquery-select2-4

我有一个带有一个文本输入和一个select2元素的表单(版本4.0.0)。我想在专注于文本输入时,select2打开。

这是我尝试过的:

<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/

我不明白我的问题是什么。

2 个答案:

答案 0 :(得分:3)

他们已经举例说明了如何打开下拉选项。

文档网址 System.Windows.ContentControl,请查看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 Part:

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

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

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

使用onChange事件尝试此示例:https://select2.github.io/examples.html

如果您需要帮助,请告诉我们。)

答案 1 :(得分:0)

以上代码工作但很少改变

更改此代码     $(“input”)。on(“change”,function(){         $( “#E1”)选择2( “开放”)。     });

到此代码,然后您可以执行此功能

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