Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

select2 - Setting different width to input and dropdown

I am using Select2 3.3.2

I have very very long options in the select. Example:

<select id="e1"> <option value="AL">Alabama</option> <option value="WY">Wyoming</option> <option value="WY">very long long long text</option> <option value="WY">very long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long long text</option> </select> 

The purpose is to avoid wrapping of the options when the dropdown opens up.

I would like to set long width for the dropdown when it opens up (for example - 800px, or even automatic evaluated width).

But to keep the input with short width when the dropdown is closed (for example 300px).

I followed this "Add option to set dropdown width" issue of select2.

But I couldn't get it to work, the width of the options/dropdown is the same as the input's width and the options as wrapped to multiple lines.

Here is the demo of my problem in jsfiddle - http://jsfiddle.net/ewwAX/

Thank you all in advance for helping.

like image 609
naviram Avatar asked May 13 '13 09:05

naviram


1 Answers

Select2 includes 'dropdownAutoWidth' parameter which uses javascript to attempt to be wide enough for the dropdown contents.

$('#whatever').select2({dropdownAutoWidth : true}); 

This at least works with Select2 3.4.3 - I don't know how much earlier it was introduced.

like image 171
Dave Amphlett Avatar answered Sep 21 '22 01:09

Dave Amphlett