Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pokaż/ukryj
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Domin
Witam,

Mam funkcję która pokazuje lub ukrywa fragment kodu w zależności co zostanie wybrane. Fragment poniżej.

  1. <?php
  2. <script language="JavaScript">
  3. function show(element)
  4. {
  5. obj=document.getElementById(element);
  6. obj.style.display="";
  7. }
  8.  
  9. function hide(element)
  10. {
  11. obj=document.getElementById(element);
  12. obj.style.display="none";
  13. }
  14. </script>
  15. ?>


tutaj wywołuje funkcję za pomocą onclick która pokazuję wybrany element. Jednak ten fragment dział tylko wtedy kiedy klikniemy, czyli zaznaczymy. A ja chcę żeby po odznaczeniu checkboxa element się chował czyli była użyta funkcja hide(element = 'limity').

  1. <?php
  2. <input type="checkbox" class="checkbox" name="l_k_1" value="TAK" onclick="show(element = 'limity')">
  3. ?>


Jak można rozwiąazać ten problem?
jarekh
mozesz zrobic tak:
  1. <input type="checkbox" class="checkbox" name="l_k_1" value="TAK" onclick="change(element = 'limity',this.checked)">


i dodac te funkcje
  1. function change(element,state)
  2. {
  3. if(state==true){
  4. hide(element);
  5. }
  6. else{
  7. show(element);
  8. }
  9. }
Domin
mam taki kod:

  1. <?php
  2. <script language="JavaScript">
  3.  
  4. function show(element)
  5. {
  6. obj=document.getElementById(element);
  7. obj.style.display="";
  8. }
  9.  
  10. function hide(element)
  11. {
  12. obj=document.getElementById(element);
  13. obj.style.display="none";
  14. }
  15.  
  16. function change(element, state)
  17. {
  18. if (state == true) {
  19. show(element);
  20. } else {
  21. hide(element);
  22. }
  23. }
  24.  
  25. </script>
  26. ?>


select:
  1. <select class="selectbox" name="p_6011" >
  2. <option value="" selected="tak"></option>
  3. <option value="Pozytywna" onclick="hide(element='poz')">Pozytywna</option>
  4. <option value="Dodatkowe warunki" onclick="show(element='poz')">Pozytywna jeśli...</option>
  5. <option value="Negatywna" onclick="hide(element='poz')">Negatywna</option>
  6. </select><br>
  7.  
  8. <div id="poz" style="display: none" >
  9. <? echo p_6012 ?>:<br>
  10. <textarea type="text" class="textareabox1" name="p_6012"></textarea>
  11. </div>


Wszystko pokazuje się i ukrywa ale tylko w Firefoxie, a co trzeba zrobić żeby działało też w IE.

Z góry dziękuję za pomoc.
nospor
dla option nie przypisuje sie zadnych zdarzen. zdarzenia nalezy przypisywać dla select.

Poszukaj w tym dziale topicu, bo juz to wyjasnialem

edit:
Temat: Jak to obejsc
Domin
Dzięki za pomoc
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.