2015-04-28 42 views
1

Select2 3.5.2。jQuery Select2 - 在分层列表中突出显示子项(当搜索项匹配时)而不是其父项时

我在select2列表中有一些分层数据,父母和孩子都是有效的选择。如果可能的话,当搜索条件与孩子匹配时,我希望孩子默认突出显示,而不是父母。

例如,假设下面的代码...

$("#hdn").select2(
{ 
    width: '300px', 
    data: 
    [ 
     { 
      id: 1, 
      text: 'Italy', 
      children: 
      [ 
       { id: 2, text: 'Italy - Sardinia' }, 
       { id: 3, text: 'Italy - Sicily' }, 
      ] 
     }, 
     { 
      id: 4, 
      text: 'United Kingdom', 
      children: 
      [ 
       { id: 5, text: 'United Kingdom - Guernsey' }, 
       { id: 6, text: 'United Kingdom - Jersey' } 
      ] 
     } 
    ] 
}); 

...如果你开始键入 '耶',它目前要闻 '英国' 默认:

Current Behaviour

理想情况下,如果您开始输入'Jer',则默认情况下应该突出显示'United Kingdom - Jersey'。

因为这是一个组,我仍然希望父母显示为一个选项,我只是希望孩子默认突出显示。

看到这个小提琴:http://jsfiddle.net/moo_ski_doo/atnph13b/2/

回答

0

选择二将突出这是默认选择第一个选项。如果你不想让亮点先坐在“英国”上,那么你将不得不删除id

Select2 3.5.2不提供简单的方法来更改默认情况下高亮显示的选项。

+0

我认为可能是这样 - 感谢您的确认。我们可能不得不采取让父母无法选择的办法,并将“大陆联合王国”和“意大利大陆”作为孩子。如果没有人能提出另一个建议,我会接受你的回答。 – Moo

+0

@Moo这是强烈建议,它更符合标准的'