Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Выбрать дефолтные значения для каскадного дропдауна (https://javascript.ru/forum/events/47071-vybrat-defoltnye-znacheniya-dlya-kaskadnogo-dropdauna.html)

Volchen0ck 07.05.2014 16:47

Выбрать дефолтные значения для каскадного дропдауна
 
http://learn.javascript.ru/play/iKhN9

Для первого дропдауна используются значения:
<select id="category" class="abspos">
        <option value="cat1">bet</option>
        <option value="cat2">des</option>
        <option value="cat3">con</option>
        <option value="cat4">mob</option>
        <option value="cat5">col</option>
    </select>


во второй дропдаун подтягиваются значения скриптом из json файла.

Дефолтная категория для для первого дропдауна может быть выбрана с помощью selected="selected":
<option selected="selected" value="cat4">mob</option>


Нужно чтобы при загрузке страницы, по дефолту было выбрано: категория 'mob' и во втором списке - 3-яя сабкатегория (ну или просто список сабкатегорий для mob).

Выходит, что нужно
$.getJSON("data.json", function(data) {
             //вытянуть и установить значение
          });


Помогите, пожалуйста, с вот этим моментом //вытянуть и установить значение.

danik.js 07.05.2014 18:13

Цитата:

Сообщение от Volchen0ck
Нужно чтобы при загрузке страницы, по дефолту было выбрано: категория 'mob'

Дык атрибут selected на опшне mob разве не выполняет эту задачу?
Цитата:

Сообщение от Volchen0ck
во втором списке - 3-яя сабкатегория

По событию готовности DOM делаешь свой getJSON, в конце которого выставляешь selected нужной категории. Или можешь в самом JSON'е помечать нужный пункт, и при наполнении select'а ему выставлять атрибут selected.

Volchen0ck 08.05.2014 12:20

$.getJSON('data.json', function(data){
        
       vals = data.mob.split(",");

        var $jsontwo = $(subcategory);
        $jsontwo.empty();
        $.each(vals, function(index, value) {
            $jsontwo.append("<option>" + value + "</option>");
        });

    });


Часовой пояс GMT +3, время: 08:21.