Witam

Mam dwa selecty. Pierwszy przyjmuje dwie wartosci 1 - "Pokój i 2 - "Apartament". W zależności od wyboru chciałem aby zmieniały się etykiety drugiego selecta.
Stworzyłem taki o to kod:
  1. <?php
  2. function zamiana(wybor) {
  3.    var main = new Array ("Max. cena za tydzień","do 500u20AC","do 800u20AC","do 1000u20AC","do 2000u20AC","do 5000u20AC","więcej");
  4.    var max_select = new Array ("Max. cena za dzień","do 100u20AC","do 150u20AC","do 200u20AC","do 300u20AC","do 500u20AC","więcej");
  5.  
  6.    var main2 = new Array ("Długość pobytu","7 dni","14 dni","21 dni","28 dni","więcej");
  7.    var long_select = new Array ("Długość pobytu","3 dni","4 dni","5 dni","6 dni","więcej");
  8.  
  9.    if(wybor == "1") {
  10.        var dlugosc = max_select.length-1;
  11.        document.search_form.elements.max_cena.options.length = max_select.length;
  12.        for (var i=0; i<= dlugosc; i++) {
  13.            document.search_form.max_cena.options[i] = new Option(max_select[i]);
  14.            document.search_form.max_cena.options[i].value = i;
  15.        }
  16.  
  17.        var dlugosc2 = long_select.length-1;
  18.        document.search_form.elements.ilosc_noclegow.options.length = long_select.length;
  19.        for (var i=0; i<= dlugosc2; i++) {
  20.            document.search_form.ilosc_noclegow.options[i] = new Option(long_select[i]);
  21.            document.search_form.ilosc_noclegow.options[i].value = i;
  22.        }
  23.    }
  24.  
  25.    if(wybor == "2") {
  26.        var dlugosc = main.length-1;
  27.        document.search_form.elements.max_cena.options.length = main.length;
  28.        for (var i=0; i<= dlugosc; i++) {
  29.            document.search_form.max_cena.options[i] = new Option(main[i]);
  30.            document.search_form.max_cena.options[i].value = i;
  31.        }
  32.  
  33.        var dlugosc2 = main2.length-1;
  34.        document.search_form.elements.ilosc_noclegow.options.length = main2.length;
  35.        for (var i=0; i<= dlugosc2; i++) {
  36.            document.search_form.ilosc_noclegow.options[i] = new Option(main2[i]);
  37.            document.search_form.ilosc_noclegow.options[i].value = i;
  38.        }
  39.    }
  40. }
  41. ?>


I zostało to podpięte do onChange w pierwszym Select. Wszystko działa ale....

1. Przy walidacji mówi że nie istnieje dla <form> atrybut name (tutaj search_form).
2. Walidator mowi ze onChange w Select tez nie moze wystapic.
3. Najwazniejsze. Ze wzgledu na budowe serwisu wolałbym aby te zmiany drugiego selecta nie nastepowaly w wyniku onChange tylko ze wzgledu na to co jest aktualnie wybrane w pierwszym select (podczas gdy wybiore druga opcje w 1 select przejde do innej podstrony a potem z linka wroce znowu na glowna to w drugim select mam te wartosci poczatkowe - bo w koncu nie nastapila zmiana jako onChange). Mam nadzieje ze jest jasne co chce uzyskac.

Czy ktoś może mi pomoc? Z gory wielkie dzięki!