Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] [PHP] Potwierdzenie usunięcia
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
gawellus
Witam
Mam taki mały problem. Otóż mam formularz edytujący pewne rekordy.
Pod nim jest ukryty kolejny, który przy odpowiedniej fladze się wyświetla i pokazuje przycisk do usuwania rekordów.
Chciałem zrobić potwierdzenie usunięcia, wziąłem skrypt z forum na potwierdzenie usunięcia. Po naciśnięciu przycisku formularza pytanie o potwierdzenie się wyświetla, ale nie przechodzi do skryptu usuwającego:

Kod potwierdzenia:

CODE
<script type="text/javascript">
function _delete(e,a) {
if(e)e.preventDefault();
else window.event.returnValue=false;
if(window.confirm('Napewno chcesz usunąc?')) window.location=a.parentNode.href;
}
</script>


Kod formularza z przyciskiem:

CODE
echo '<form method=post action="usun_uzytkowy.php" onsubmit="_delete(event,this);" />';
echo '<td>';
echo '<input type=hidden name=isbn
value="'.$item['nr_inwent'].'" />';
echo '<input type=submit
value="Usuń przedmiot" />';
echo '</td>';
echo '</form>';
vokiel
  1. <script type="text/javascript">
  2. if (confirm('Czy na pewno chcesz usunąć?')){
  3.    alert('Usunieto');
  4.    document.forms.usuwanie.submit();
  5. }else{
  6.    alert('Nie usuwamy');
  7. }
  8. </script>
  9. <?php
  10. echo '<form name="usuwanie" id="usuwanie" method="post" action="usun_uzytkowy.php" onsubmit="_delete(event,this);" />';
  11. echo '<input type=hidden name=isbn value="'.$item['nr_inwent'].'" />';
  12. echo '<input type=submit value="Usuń przedmiot" />';
  13. echo '</form>';
  14. ?>
gawellus
działa idealnie! dzięki!

właśnie znalazłem pewien błąd w tym skrypcie,
otóż kiedy kliknę w "nie usuwaj" skrypt php usuwający rekord i tak jest wykonywany.
Co zrobić, żeby po kliknięciu na "nie" skrypt nie był wywoływany?
kefirek
  1. <?php
  2. echo '<form name="usuwanie" id="usuwanie" method="post" action="usun_uzytkowy.php"/>';
  3. echo '<input type=hidden name=isbn value="'.$item['nr_inwent'].'" />';
  4. echo '<input type=submit value="Usuń przedmiot" onclick="return Defuse();"/>';
  5. echo '</form>';
  6.  
  7.  
  8. echo "<script type='text/javascript'>
  9. function Defuse() {
  10.    return confirm('Czy na pewno chcesz usunąć?');
  11. }
  12. </script>\n";
  13. ?>
gawellus
super! dzięki
ayeo
Witam!

Sugerowałby zainteresować się eventami w JS winksmiley.jpg Znaczy się nieinwazyjnym JS....

Pozdrawiam!
slightyboy
Cytat(kefirek @ 18.07.2009, 14:29:30 ) *
  1. <?php
  2. echo '<form name="usuwanie" id="usuwanie" method="post" action="usun_uzytkowy.php"/>';
  3. echo '<input type=hidden name=isbn value="'.$item['nr_inwent'].'" />';
  4. echo '<input type=submit value="Usuń przedmiot" onclick="return Defuse();"/>';
  5. echo '</form>';
  6. echo "<script type='text/javascript'>
  7. function Defuse() {
  8.    return confirm('Czy na pewno chcesz usunąć?');
  9. }
  10. </script>\n";
  11. ?>
W takim wypadku radziłbym raczej korzystać ze zdarzenia "onSubmit" formularza. Kod:
Kod
<form name="usuwanie" id="usuwanie" method="post" action="usun_uzytkowy.php" onsubmit="return Defuse();"/>
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.