Показать сообщение отдельно
  #1 (permalink)  
Старый 11.09.2010, 19:53
Интересующийся
Отправить личное сообщение для psyhonut Посмотреть профиль Найти все сообщения от psyhonut
 
Регистрация: 30.08.2010
Сообщений: 23

Дождаться выполнение запроса.
function chn(objct) {
            var di_nas_punkt_id = $(objct).val();
            if (di_nas_punkt_id == '0') {
                $('#di_areas_id').html('');
                $('#di_areas_id').attr('disabled', true);
                return(false);
            }
            $('#di_areas_id').attr('disabled', true);
            $('#di_areas_id').html('<option>загрузка...</option>');
            var url = '<?php echo $_SERVER['REQUEST_URI'],'&from=areas'; ?>';
            
            $.get(
                url,
                "nas_punkt_id=" + di_nas_punkt_id,
                function (result) {
                    var options = '<option value="0"><?=_l_okrug_create_ar_select;?></option>';
                    $(result.areas).each(function() {
                        options += '<option value="' + $(this).attr('id') + '">' + $(this).attr('title') + '</option>';
                    });
                    $('#di_areas_id').html(options);
                    $('#di_areas_id').attr('disabled', false);
                },
                "json"
            );
        };

Данный скрипт делает мне набор опций, которые по аджаксу получаются из файла.
После выполнения этого кода мне надо сделать выбранным определенный пункт меню.
Делается так:
загружаю список
chn($('#di_nas_punkt_id'));

И выбираю элемент
$('#di_areas_id').val(<?=$sel_area;?>);

Элемент не выбирается, так как на момент выполнения кода
$('#di_areas_id').val(<?=$sel_area;?>);
список почему-то еще пустой.

Как мне дождаться выполнения кода и заполнения списка, и только потом продолжать работу JS?
Ответить с цитированием