Скрипт для зависимых списоков
(function($)
{$.fn.dependent = function(opts)
{opts.data = {};this.each(function()
{$.each(opts.chain, function(index, selectID)
{var ident = selectID.substr(1);var selectHTML = $(selectID).html();
opts.data[ident] = {};
$('<select>'+selectHTML+'</select>').find('optgroup').each(function()
{var optGroup = $('<div>').append( $(this).eq(0).clone() ).html();
var group = $(this).attr('label');opts.data[ident][group] = optGroup;});
if(opts.chain[index+1])
{$(opts.chain[index]).bind('change', { 'nextID' : opts.chain[index+1] }, binding);} });
$(this).bind('change', { 'nextID' : opts.chain[0] }, binding);
function binding(event) {var next = event.data.nextID.substr(1);
$('#'+next).html(opts.data[next][$(this).val()]);
$('#'+next).trigger('change');}});}})(jQuery);
// Обращение к функции Dependent JQuery для взаимосвязанных списков
$(document).ready(function() {$('#category_1').dependent({chain : ['#subcategory_1', '#articul_1']});});