Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP]problem z przekazaniem danych php->js
Forum PHP.pl > Forum > Przedszkole
neo1986kk
Witam problem polega na tym że zmienna jest nadawana z bazy danych

  1. ...
  2. while ($row= mysql_fetch_array($result))
  3. {
  4. $zmienna=$row[1];
  5.  
  6.  
  7. echo '<input type="hidden" name="usun" id="usunp" value="'.$zmienna.'"';
  8. echo '</input>';
  9. echo '<tr><td>$zmienna</td><td class="usunp" title="usun" onclick="usuwanie()">usun</td></tr>';
  10. echo '</td><tr>';
  11. echo '</table>';
  12. }
  13.  


wygląda to tak:

aaaaaa usun
bbbbbb usun
ccccccc usun

po kliknięciu przyciku usuń skrypt pyta o usuwanie

  1. function usuwanie() {
  2. var usun= document.getElementById('usunp').value;
  3. var answer = confirm('Czy napewno chcesz usunąć \n'+ usun)
  4. if (answer){
  5. ausun();
  6. }
  7. else{
  8. return false;
  9. }
  10. }


ok pobiera element z getElementById('usunp') tylko że za każdym razem ten element = aaaaaa. Obojętnie który przycisk 'usun' przycisnę.

Myślę że powinienem to zrobić na tablicy ale zabardzo nie wiem jeszcze jak i chyba nie może tu być getElementById ale to tylko moje przypuszczenia, jeśli ktoś może mi pomoc to proszę o podpowiedzi.
Pozdrawiam
mortus
No i dobrze pobiera, Twój kod PHP generuje w podanym przykładzie trzy ukryte pola input o id="usunp". Zgodnie ze specyfikacją (X)HTML w dokumencie może istnieć tylko jeden element o danym identyfikatorze (id). JavaScript zawsze bierze pod uwagę pierwszy element o danym id. Rozwiązaniem jest użycie przycisku button, zamiast ukrytego pola input.
  1. ...
  2. echo '<form action="" method="post">';
  3. echo '<table>';
  4. while ($row= mysql_fetch_array($result)) {
  5. $zmienna=$row[1];
  6. echo '<tr><td>$zmienna</td><td><button type="submit" name="usunp_' . $zmienna . '" value="' . $zmienna . '" id="usunp_' . $zmienna . '" onclick="usuwanie(this)">usuń</button></td></tr>';
  7. }
  8. echo '</table>';
  9. echo '</form>';
A w kodzie js
Kod
function usuwanie(element) {
    var usun = element.value;
    var answer = confirm('Czy napewno chcesz usunąć \n'+ usun);
    if(answer) {
        ausun();
    } else{
        return false;
    }
}
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.