Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> problem z divem
joytec
post 21.02.2006, 16:49:05
Post #1





Grupa: Zarejestrowani
Postów: 66
Pomógł: 0
Dołączył: 24.06.2005

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


Kod
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Untitled Document</title>
<script type="text/javascript">
function ccount(chk, name) {
   var childs = document.getElementById(name).childNodes;
   if(chk.checked){
     for(i = 0; i < childs.length; i++) {
       if(childs[i].type=="checkbox") {
           childs[i].disabled=false;
       }
     }
   }else{
  for(i = 0; i < childs.length; i++) {
       if(childs[i].type=="checkbox") {
           childs[i].disabled=true;
       }
     }
   }
}
</script>

</head>

<body>
<form action="" method="get" name="form1">
<input name="ch1" type="checkbox" value="ch1v" onclick="ccount(this, 114)" />
<div id="114">
<table><tr>
<td><input name="ch2" type="checkbox" disabled value="ch2v" /></td>
<td><input name="ch3" type="checkbox" disabled value="ch3v" /></td>
<td><input name="ch4" type="checkbox" disabled value="ch4v" /></td>
</tr></table>
</div>
</form>
</body>
</html>

Witam.
Funkcja nie dziala po zapisaniu checkboxow w tabele. Dlaczego?. Skrypt po kliknieciu checkboxa aktywizuje reszte lub odwrotnie.
Go to the top of the page
+Quote Post
revyag
post 21.02.2006, 22:51:23
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


No nie działa bo opiera się na relacji rodzic - potomek, a Ty wsadziłeś checkboxy w tabele, która ma wiersze i komórki i tym sposobem przesunąłeś checkboxa w dół drzewa genealogicznego smile.gif
Kod
<script type="text/javascript">
function ccount(c) {
    var chk = document.getElementById("ch1");
    for(var i = 0; i < c.length; i++) {
        if(c[i].type=="checkbox") {
            if(chk.checked) {
                c[i].disabled="disabled";    
            } else {
                c[i].disabled="";    
            }
        } else {
            if(c[i].hasChildNodes) {
                ccount(c[i].childNodes);
            }
        }
    }
}
function cc() {
    var childs = document.getElementById("114").childNodes;
    ccount(childs);
}
</script>

---
pierwsza funkcja rekurencyjnie wyłącza lub włącz wszystkie checkboxy
druga właściwie tylko wywołuje pierwszą, ale ponieważ pierwsza jest
rekurencyjna, więc nie można w niej zdefinować na początku tablicy
z dziećmi, ponieważ za każdym razem ta tablica byłaby nadpisywana
i z rekurencji nici.

  1. <form action="" method="get" name="form1">
  2. <input id="ch1" name="ch1" type="checkbox" value="ch1v" onclick="cc()" />
  3. <table><tbody id="114">
  4. <tr>
  5. <td><input name="ch2" type="checkbox" value="ch2v" /></td>
  6. <td><input name="ch3" type="checkbox" value="ch3v" /></td>
  7. <td><input name="ch4" type="checkbox" value="ch4v" /></td>
  8. </tr></tbody>
  9. </form>


---
używaj odpowiedniego bbcode jak piszesz -> zobacz jak wygląda mój post.


--------------------
-------------

------
Go to the top of the page
+Quote Post
Alkagar
post 24.02.2006, 12:22:51
Post #3





Grupa: Zarejestrowani
Postów: 63
Pomógł: 0
Dołączył: 18.12.2005

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


Witam,
nie bardzo wiedzialem gdzie takiego posta napisac wiec dalem go tutaj jakoże dotyczy po częsci diva smile.gif.
Na stronie mam sobie diva. I teraz chcialbym do niego zaladować pewien tekst zawarty w innym pliku ale dopiero po kliknięciu na przycisk badz link. Czy jest taka możliwość??
Kolejnym problemem tutaj jest to kiedy ten tekst bedzie się ładowal do tejze strony czy na samym poczatku czy dopiero po kliknięciu? Najlepiej byloby gdyby można bylo opoznic badz wykonac ta akcje dopiero podczas klikniecia zeby strona ladowala sie szybko na poczatku a potem w miare ogladania strony pobireala kolejne dane ale bez potrzeby odswiezania.

Macie jakies zastrzezenia co do takiego sposobu pobierania danych? Jakieś możliwe problemy z tym związane?

P.S. czy stosowanie element.innerHTML = "cos"; jest niepoprawne? Gdzies spotkalem sie z informacją że czegoś takiego nie powinno sie stosować.

Pozdrawiam,
Alk


--------------------
I amar prestar aen
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: 22.06.2025 - 23:38