Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Odblokowanie listy rozwijanej po zaznaczeniu checkbox
Forum PHP.pl > Forum > Przedszkole
szczabik
Napisałem taki kod JS
  1. <script language='JavaScript'>
  2. function odblokuj() {
  3. document.getElementById('lista').disabled = false;
  4. }
  5. <select id="lista" name="lista">
  6. <option value="a">a</option>
  7. <option value="b">b</option>
  8. <option value="c">c</option>
  9. <input type="checkbox" name="test" value="1" onClick='odblokuj();'/>

i nie wiem jak dalej zrobić gdy ktoś zaznaczy checkbox to chciałem zrobić by lista rozwijana była odblokowana ale gdy checkbox jest odznaczony to list miała by być zablokowana. Może mnie ktoś naprowadzić jak mam to zrobić ?
piotrooo89
  1. <select id="lista" name="lista" disabled="true" >
  2. <option value="a">a</option>
  3. <option value="b">b</option>
  4. <option value="c">c</option>
  5. <input type="checkbox" name="test" value="1" onClick="if (this.checked == true) lista.disabled=false; else lista.disabled=true;"/>


tak łatwiej.
szczabik
No tak działą ale jest jedno male ale jak wejde na strone to domyslnie jest odznaczone i lista powinna byc zablokowana a tak nie jest. Dopiero po zaznaczeniu i odznaczeniu sie blokuje
piotrooo89
nie możliwe... jest przecież ustawione:

  1. <select id="lista" name="lista" disabled="true" >


porównaj sobie

Twoje:

  1. <select id="lista" name="lista">


i moje:

  1. <select id="lista" name="lista" disabled="true" >


znajdź 1 różnice.
szczabik
Wszystko pięknie ale jest jeszcze jeden problem domyślnie gdy checkbox podczas ładowania strony jest zaznaczony to lista jest zablokowana. Jak temu zaradzić ?
piotrooo89
nie bardzo rozumiem? chcesz zrobić tą fajeczkę na czekboksie? czy co? napisz dokładnie.
szczabik
Mam taki



formularz który dodaje dane do bazy dane na temat quizu
Jeśli zaznaczę checkbox to quiz mam limit czas na rozwiązanie który wybieram z listy jeśli nie zaznaczę przy dodawaniu checkbox to quiz jest bez limitu czasu czyli w bazie danych ma wartość 0

Potem w formularzu do edycji quziów sprawdzam za pomocą kodu

  1. <?php
  2. <input type='checkbox' name='limit' value='1' ".(!$data['ile_czasu'] == 0 ? " checked='checked'" : "")." onClick='if (this.checked == true) czas.disabled=false; else czas.disabled=true;'>";
  3. ?>


czy jest zaznaczony limit czasu czy nie.

Odpowiednio jeśli w bazie jest 0 to jest nie zaznaczany w panelu edycji a jeśli nie jest 0 to jest zaznaczony i problem w tym że podczas edycji quizu gdy wcześniej został zaznaczony checkbox pojawia jest takie coś


checkbox jest zaznaczony ale mimo to lista jest zablokowana.
Inaczej wytłumaczyć nie umiem.
Wie ktoś jak to rozwiązać ?


?
piotrooo89
w takim razie dla listy też musisz sprawdzać dodatkowo czy jest. np w onload sprawdzasz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.