Есть  5 select,  в зависимости от вибора меяются другие, нужно перебрать все комбинации записать в объект и передать на сервер.
третий день уже не могу побороть 

           Не успевают подгрузится данные, и не отбираются
  var years = [];
             var make = [];
             var model = [];
             var res = [];
             $("#sel_Yr option").each(function () {
                 years[years.length++] = $(this).val();
             });
             for (var i = 0; i < years.length; i++) {
                 $("#sel_Yr").find("option:contains('" + years[i] + "')").attr("selected", "selected");
                 $("#sel_Yr").find("option:contains('" + years[i] + "')").change();
                 var makesel = $("#sel_Mk option");
                 for (var ii = 0; ii < makesel.length; ii++) {
                     make[make.length++] = makesel[ii].text;
                 }
                 for (var j = 0; j < make.length; j++) {
                     $("#sel_Mk").find("option:contains('" + make[j] + "')").attr("selected", "selected");
                     $("#sel_Mk").find("option:contains('" + make[j] + "')").change();
                     model = [];
                     model.length = 0;
                     var modelsel = $("#sel_Mdl option");
                     for (var jj = 0; jj < modelsel.length; jj++) {
                         model[model.length++] = modelsel[jj].text;
                     }
                     for (var k = 0; k < model.length; k++) {
                         $("#sel_Mdl").find("option:contains('" + model[k] + "')").attr("selected", "selected");
                         $("#sel_Mdl").find("option:contains('" + model[k] + "')").change();
                         res[res.length++] = years[i++] + "," + make[j++] + "," + model[k++];
                     }
                 }
             }
это первых три делал.