jquery selectbox: перезагрузить Jquery Selectbox с другими выпадающими значениями, если выбрана последняя опция - PullRequest
0 голосов
/ 19 марта 2012

Как я могу обновить множественный выбор jquery, когда последний вариант выбран с новыми значениями? Как и у меня в списке выбора ниже 100 * *

<select id="positions">
    <option value="0">Programmer</option>
    <option value="1">Tester</option>
    <option value="2">Manager</option>
    <option value="3">Admin</option>
    <option value="4">Load all other</option>    
</select>

Если пользователь выбирает опцию «загрузить все остальные» из поля выбора, то этот блок выбора должен быть повторно инициализирован с другими значениями. Или же можно заполнить два пропускаемых значения в одном окне выбора, разделенных жирной линией.

Ответы [ 3 ]

1 голос
/ 19 марта 2012

Часть HTML:

<select id="positions">
    <option value="0">Programmer</option>
    <option value="1">Tester</option>
    <option value="2">Manager</option>
    <option value="3">Admin</option>
    <option value="4">Load all other</option>    
</select>

<select id="positions2">
    <option value="0">test1</option>
    <option value="1">test2</option>
    <option value="2">test3</option>
    <option value="3">test4</option>
    <option value="4">Load all other</option>    
</select>

Часть Jquery:

$('#positions').change(function() {
    if ($('#positions').val() == 4) {
        var data = $('#positions2').html();
        $('#positions').html(data );
    }
});

Вот пример Jsfiddle :

1 голос
/ 19 марта 2012

Мне кажется, я понимаю, что вы имеете в виду. Будет ли это сделать трюк?

$('#positions').change(function() {
    if ($('#positions').val() === '4') {
        var newOptions = '<option value="0">Programmer</option>';
        newOptions += '<option value="1">Tester</option>';
        newOptions += '<option value="2">Manager</option>';
        newOptions += '<option value="3">Admin</option>';
        newOptions += '<option value="5">Helicopter Pilot</option>';
        newOptions += '<option value="6">Fireman</option>';
        newOptions += '<option value="7">President of the United States</option>';
        $('#positions').html(newOptions);
    }        
});​
0 голосов
/ 19 марта 2012

для загрузки $ ('# позиции') со значениями из другого selectBox

$('#positions').html( $('#otherSelectBox').html() );

но что, если тот же пользователь все еще хочет увидеть предыдущие варианты?я думаю, что вы должны просто добавить $ ('# позиции') со следующими значениями и просто скрыть предыдущий

$('#positions').children('option').hide().end().append( $('#otherSelectBox').html() );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...