Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php?]{java?] Głupi problem z selectami
mihipoznan
post 19.04.2008, 21:48:58
Post #1





Grupa: Zarejestrowani
Postów: 194
Pomógł: 0
Dołączył: 27.02.2008

Ostrzeżenie: (0%)
-----


Mam na stonie 2 selecty..i mam ustawioine tak, że jak w pierwszym ustawię pewną wartość to w drugim pojawiają się też odpowiednie wartości.. Jednak chcę do tego dodać ( w 1 selekcie) takie wartości po których ten drugi select się w ogóle nie wyświetli.. jak to zrobić ? Jakoś na if i skorzystać z select name ?

Prościej.. chciałbym aby po wybraniu jakiejś opcji z pierwszego selecta drugi select znikał..

W head mam

Kod
<head>
    <script type="text/javascript">
    function zamiana(wybor)
    {
    var rodzaj = new Array ("wybierz rodzaj..");
    var mieso = new Array ("wieprzowina","wołowina","cielęcina","konina","konserwy","drób");
    var oleje = new Array ("rzepakowy","słonecznikowy","sojowy","lniany","gorczycowy","inne roslinne");
    var nawozy = new Array ("azotowe","fosforowe","potasowe","wieloskładnikowe", "sr. ochorny roslin","pozostałe");
    var sypkie = new Array ("cukier","maka","kasza","płatki","mak","pozostałe");
    if (wybor == "rodzaj") {
    var dlugosc = rodzaj.length-1;
    document.formularz.elements.drugi.options.length = rodzaj.length;
    for (var i=0; i<= dlugosc; i++) {
    document.formularz.drugi.options[i] = new Option(rodzaj[i]);
    document.formularz.drugi.options[i].value = rodzaj[i];
    }
    }
    if (wybor == "sypkie") {
    var dlugosc = sypkie.length-1;
    document.formularz.elements.drugi.options.length = rodzaj.length;
    for (var i=0; i<= dlugosc; i++) {
    document.formularz.drugi.options[i] = new Option(sypkie[i]);
    document.formularz.drugi.options[i].value = sypkie[i];
    }
    }
    if (wybor == "mieso") {
    var dlugosc = mieso.length-1;
    document.formularz.elements.drugi.options.length = mieso.length;
    for (var i=0; i<= dlugosc; i++) {
    document.formularz.drugi.options[i] = new Option(mieso[i]);
    document.formularz.drugi.options[i].value = mieso[i];
    }
    }
    if (wybor == "oleje") {
    var dlugosc = oleje.length-1;
    document.formularz.elements.drugi.options.length = oleje.length;
    for (var i=0; i<= dlugosc; i++) {
    document.formularz.drugi.options[i] = new Option(oleje[i]);
    document.formularz.drugi.options[i].value = oleje[i];
    }
    }
    if (wybor == "nawozy") {
    var dlugosc = nawozy.length-1;
    document.formularz.elements.drugi.options.length = nawozy.length;
    for (var i=0; i<= dlugosc; i++) {
    document.formularz.drugi.options[i] = new Option(nawozy[i]);
    document.formularz.drugi.options[i].value = nawozy[i];
    }
    }
    }
    </script>
    <script type="text/javascript">
    function nowe_okno() {
    okno = window.open("laduj.php","laduj","toolbar=no, height=200px, width=400px");
    }
    function zamknij_okno() {
    okno.close();
    }
    </script>


No i selecty:

Kod
<body>
    <form name="formularz">
    <select name="pierwszy" onChange="zamiana(this.value);" style="width: 150px;">
    <option value="rodzaj">Wybierz rodzaj..
    <option value="mieso">Mięso
    <option value="oleje">Oleje roslinne
    <option value="nawozy">Nawozy
    <option value="sypkie">Produkty sypkie
    <option>jęczmień konsumpcyjny
    <option>jęczmień paszowy
    <option>rzepak
    <option>pszenica paszowa
    <option>pszenica konsumpcyjna
    <option>owies
    <option>pszenżyto
    <option>sruta sojowa
    <option>sruta rzepakowa
    <option>kukurydza paszowa
    <option>otręby pszenne
    <option>otręby żytnie
    <option>żyto pszenne
    <option>żyto konsumpcyjne
    <option>estry metylowe
    </select>
    <select name="drugi" style="width: 180px;">
    <option value="rodzaj">wybierz rodzaj...
    </select>
    </form>
    </body>


Pomocy!

Chociaż jakieś podpowiedzi, obojętnie..bo zupełnie nie mam pojęcia jak się za to wziąć..

może jakoś w Ajaxie ?

Ten post edytował mihipoznan 19.04.2008, 19:26:26
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
sniezny_wilk
post 20.04.2008, 08:23:27
Post #2





Grupa: Zarejestrowani
Postów: 732
Pomógł: 80
Dołączył: 25.05.2005
Skąd: Szczecin

Ostrzeżenie: (0%)
-----


Możesz zastosować coś takiego

  1. <select id="costam" onchange="zmiana()">


robisz drugi select i nadajesz mu id
  1. <select id="costam2">


i potem już js

  1. <script type="text/javascript">
  2. function zmiana(){
  3. if(document.getElementById('costam').value = warunek){
  4. document.getElementById('costam2').disabled = true; // zablokujesz element
  5. }
  6. }

Jeśli chodzi o całkowite zniknięcie to nie pamiętam dokładnie, chyba jest coś takiego jak visible. Poszukaj w google, a jak nie to wstaw to w diva, i zmieniaj mu css'a, a konkretnie visibility: hidden.

Ten post edytował sniezny_wilk 20.04.2008, 09:18:51


--------------------
Go to the top of the page
+Quote Post
mihipoznan
post 20.04.2008, 09:13:58
Post #3





Grupa: Zarejestrowani
Postów: 194
Pomógł: 0
Dołączył: 27.02.2008

Ostrzeżenie: (0%)
-----


No wreszcie ktoś wie..naprawdę wielkie dzięki smile.gif Nie pomyślałem że z tym divem tak można biggrin.gif Dzięki smile.gif +pomogł smile.gif

Ten post edytował mihipoznan 20.04.2008, 09:14:22
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:39