test multiple select

limiter le nb de slection a 2 et forcer l'affichage

by LorenzoFR

HTML

<select name="selector" id="selector" multiple="multiple" data-overlay-theme="c" data-theme="c"  data-icon="grid" data-iconpos="left">
    <optgroup label="Animaux">
        <option value="cheval" selected="selected">cheval</option>
        <option value="mouton">mouton</option>
        <option value="boeuf">boeuf</option>
        <option value="etc">etc</option>
    </optgroup>
    <optgroup label="Objet">
        <option value="Table">Table</option>
        <option value="lampe">lampe</option>
        <option value="etc">etc</option>
    </optgroup>
</select>

JavaScript

$('#selector').change(function(ev) {
    if( $('#selector > optgroup > option:selected').length > 2 ){
        while( $('#selector > optgroup > option:selected').length > 2 ){
            $('#selector > optgroup > option:selected:eq('+(
    $('#selector > optgroup > option:selected').length - 1) + ')').removeAttr('selected');
        }
    }
    var slc = $('#selector > optgroup');
    slc.remove();
    $('#selector').append(slc);
});