Перейти к содержанию
Mobils

Создать доп. связанный список select

Рекомендуемые сообщения

Здравствуйте.
Помогите создать дополнительный связанный выпадающий список. 
Мне нужно реализовать так, чтобы кроме Страны и Региона можно еще и выбрать связанный список городов, который подтягивается после выбора региона.
Базу данных для городов создал, на основе списка регионов в админке создал список городов (за аналог controller,model и view взял из файла region), который можно в админке добавить, изменить или удалить. Теперь мне нужно реализовать связанный выпадающий список при добавлении покупателя в админке.
В меню админки при выборе ПРОДАЖИ - ПОКУПАТЕЛИ - ПОКУПАТЕЛИ при добавлении нового покупатели вы создаете адрес. Там мне нужно кроме выбора Страны и Региона выбрать при выборе региона отобразить выпадающий список городов.
В файле шаблона customer_form.tpl сделал список select, но не подтягивает список городов при выборе региона. Но поэтому нужно править скрипт внизу файла. Правил его и изменял, пробовал его дублировать изменив на свои переменные но не получается. Помогите решить. Многим этот пост поможет чтобы себе могли добавить еще один выпадающий список.

Вот сам кусок скрипта:

<script type="text/javascript"><!--
function country(element, index, zone_id) {
  if (element.value != '') {
        $.ajax({
            url: 'index.php?route=sale/customer/country&token=<?php echo $token; ?>&country_id=' + element.value,
            dataType: 'json',
            beforeSend: function() {
                $('select[name=\'address[' + index + '][country_id]\']').after('<span class="wait"> <img src="view/image/loading.gif" alt="" /></span>');
            },
            complete: function() {
                $('.wait').remove();
            },           
            success: function(json) {
                if (json['postcode_required'] == '1') {
                    $('#postcode-required' + index).show();
                } else {
                    $('#postcode-required' + index).hide();
                }
               
                html = '<option value=""><?php echo $text_select; ?></option>';
               
                if (json['zone'] != '') {
                    for (i = 0; i < json['zone'].length; i++) {
                        html += '<option value="' + json['zone'][i]['zone_id'] + '"';
                       
                        if (json['zone'][i]['zone_id'] == zone_id) {
                            html += ' selected="selected"';
                        }
       
                        html += '>' + json['zone'][i]['name'] + '</option>';
                    }
                } else {
                    html += '<option value="0"><?php echo $text_none; ?></option>';
                }
               
                $('select[name=\'address[' + index + '][zone_id]\']').html(html);
            },
            error: function(xhr, ajaxOptions, thrownError) {
                alert(thrownError + "\r\n" + xhr.statusText + "\r\n" + xhr.responseText);
            }
        });
    }
}

$('select[name$=\'[country_id]\']').trigger('change');
//--></script> 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.