2012-01-17 3 views
0

В предыдущем вопросе я сделал Dynamic dependent select menus Я разместил этот пример кода: http://jsfiddle.net/Bs5Db/50/. Это HTML-версия конкретного сценария jquery. Пользователь @jSweazy помог мне указать, что я должен обновлять jquery.uniform скрипт каждый раз, когда я выбираю новое состояние из первого меню. Рабочая версия примера приведена здесь: http://jsfiddle.net/Bs5Db/53/. Я знаю, что опция по умолчанию слишком велика для меню, но это легко фиксируется ....Динамически зависимые меню выбора jQuery Версия PHP

Моя проблема в том, что я фактически использую PHP-версию скрипта. В этой версии обновление jquery.uniform с $ .uniform.update(); не делает трюк. На самом деле второе меню больше не отображается, когда я вставляю команду обновления.

PHP-версия состоит в следующем ...

$(document).ready(function(){ 
function populate() { 
if($('#state').val() == 'AK' || $('#state').val() == 'DC') // Alaska and District  Columbia have no counties 
{ 
    $('#county_drop_down').hide(); 
    $('#no_county_drop_down').show(); 
    } else { 
    fetch.doPost('../getCounties.php'); 
    } 
    } 
    $('#state').change(populate); 
    var fetch = function() { 
    var counties = $('#county'); 
    return { 
    doPost: function(src) { 
$('#loading_county_drop_down').show(); // Show the Loading... 
$('#county_drop_down').hide(); // Hide the drop down 
$('#no_county_drop_down').hide(); // Hide the "no counties" message (if it's the case) 
if (src) $.post(src, { state_code: $('#state').val() }, this.getCounties); 
    else throw new Error('No SRC was passed to getCounties!'); 
}, 

getCounties: function(results) { 

    if (!results) return; 
      var allCounties = $("<option value=\"All\">All Counties</option>"); 
    counties.html(results); 
    counties.prepend(allCities); 
    counties.val("All").attr('selected',true); 


$('#loading_county_drop_down').hide(); // Hide the Loading... 

$('#county_drop_down').show(); // Show the drop down 

} 
} 

}(); 

populate(); 
}); 

getCounties.php, что запрос к базе данных и извлекает графства каждого государства работает отлично. Состояние и округ - это названия двух меню выбора. Итак, если кто-нибудь может дать мне совет о том, как добиться обновления меню уездов в этой версии скрипта, я был бы благодарен. Thanx заранее за то, что нашли время, чтобы читать!

ответ

1

Я понял, что даже в этом случае вам нужно обновить jquery.uniform, но поскольку есть другие стилизованные элементы, такие как переключатели, флажки и т. Д. Вы должны вставить $ .uniform.update ('select'). Таким образом, последняя часть кода становится ...

$('#loading_county_drop_down').hide(); // Hide the Loading... 
$.uniform.update('select') 
$('#county_drop_down').show(); // Show the drop down 
+0

Спасибо, этот помог мне выйти из джема с шоу/скрыть на выбор. Небольшая заметка, у вас есть небольшая орфографическая ошибка в приведенном выше коде. Он должен быть: $ .uniform.update ('select'); –

Смежные вопросы