Если вкратце, есть плагин, он небольшой:
http://plugins.jquery.com/project/De...SelectbySilVeR
зависимых селектов, в котором зависимость одного селекта от другого указывается на основе tilte родителя, и class зависимого селекта.
В зависимости от того, что кидается ему внутрь, может работать в двух режимах.Когда несколько селектов зависят от одного, и когда зависимость по цепочке.
Я переделал его так, чтобы зависимость была не на основе title и class, а на основе value "опшионов", но это не важно.
Так вот. там есть ф-ция (практически не менял ее):
function _createHolder($holder, $holder_cls, $child, $child_id, $child_cls){
var $is_created = $($holder_cls+' '+$child_id).size();
if( $is_created == 0 ){
$('body').append('\n\n<select class="'+$holder+' '+$child_id+'" style="display:none">\n</select>\n');
}
$($child).find('option:not(:first)').each(function(){
$value = $(this).attr('value');
$class = $(this).attr('class');
$title = $(this).attr('title');
$text = $(this).text();
$($holder_cls+$child_cls).append('<option value="'+$value+'" class="'+$class+'" title="'+$title+'">'+$text+'</option>\n');
});
//$child - зависимый селект
// $($holder_cls+$child_cls) - его скрытый
которая создает для каждого зависимого селекта скрытый селект (селект-хранилище),
в который складываются все option зависимого селекта, потом, по выбору определенных option из родительского селекта к зависимому из его скрытого добавляются соответствующие option.
Так вот: эта строчка
$($holder_cls+$child_cls).append('<option value="'+$value+'" class="'+$class+'"title="'+$title+'">'+$text+'</option>\n');
приводит к тому, что IE виснет, если в зависимом select много много option будет, видимо потому, что создается целая куча элементов option.