Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] przechwytywanie odpowiedniego REL a galeria zdjęć
Forum PHP.pl > Forum > Po stronie przeglądarki
KotWButach
Witam walczę z tym od samego rana i nic...

Mam 10 zdjęć i chcę usunąć powiedzmy piąte i siódme w locie a więc za pomocą jquery. Proboje więc przesłać ID zdjęcia za pomocą REL. Udało mi się przesłać rel ale zawsze jest to rel dla 1 wartości i przesyła się tylko raz sad.gif wiec jak klikne na coś innego nic się nie dzieje... Prosze o pomoc...

  1.  
  2. <!DOCTYPE html>
  3. <html lang="pl-PL">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <script type="text/javascript" src="jquery.js"></script>
  7. <script type="text/javascript">
  8. $(document).ready(function() {
  9. $('#myForm').submit(function(){
  10. var atrybut = $('#button').attr('rel');
  11. var zmienna = "zmienna="+atrybut;
  12. $.post("exa.php", zmienna, function(data){
  13. $("#test").text(data);
  14. }) ;
  15. return false;
  16. });
  17. });
  18.  
  19. </script>
  20. </head>
  21. <body>
  22. <form id="myForm">
  23. <div id="img1"></div>
  24. <input type="submit" id="button" rel="REL1" value="usun1" />
  25. <input type="submit" id="button" rel="REL2" value="usun2" />
  26. <input type="submit" id="button" rel="REL3" value="usun3" />
  27. <input type="submit" id="button" rel="REL4" value="usun4" />
  28. <div id="test"></div>
  29. </form>
  30. </body>
  31. </html>
  32.  
  33.  
kamil4u
Napisz co dokładnie chcesz zrobić, bo masz całkowicie złe podejście.
KotWButach
Chcę zrobić edycję galerii.

IMGzdjecie1 [usun]
IMGzdjecie2 [usun]
IMGzdjecie3 [usun]
[...]

Po kliknięciu w USUN usuwam rekord z bazy danych apropo zdjęcia. Oraz ukrywam np IMGzdjecie2

Chciałbym by odbywało się to bez przeładowywania strony.
kamil4u
No to to się robi tak:
- Masz tyle samo elementów <img> co elementów służących do usuwania znajdującym się w jakimś konkretnym elemencie
- korzystasz z JS i getElementsByTagName wyszukując tylko w tym konkretnym elemencie
- robisz pętlę po tych wszystkich elementach i przypisujesz akcję usuwania do konkretnego zdjęcia

Przykład:
Kod
<div id="test">
<img src="#" alt="1"> <span><--usun</span>
<img src="#" alt="2"> <span><--usun</span>
<img src="#" alt="3"> <span><--usun</span>
<img src="#" alt="4"> <span><--usun</span>
<img src="#" alt="5"> <span><--usun</span>
</div>

<script>
onload = function(){
var imgs, img, spans, span, i;

imgs = document.getElementById('test').getElementsByTagName('img');
spans = document.getElementById('test').getElementsByTagName('span');

for( i=0; span=spans[i], img=imgs[i]; i++ ){
   span.onclick = function(i,img,span){
     return function(){
      alert("usuwam zdjecie nr: "+(i+1));
      span.parentNode.removeChild(span);
      img.parentNode.removeChild(img);
     };
   }(i,img,span);
}
}
</script>


Twoim zdaniem jest to przerobienie na jQuery(jak chcesz) i zapytać się o wszelkie wątpliwości.
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.