Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    Alert Confirm non funziona T_T

    Ciao a tutti!
    Come al solito mi trovo ad affrontare un problema davvero strano, ma ormai l'informatica non mi stupisce più
    Allora ho una form con un pulsante che mi cancella un record di un database, prima di cancellarlo definitivamente voglio chiedere la conferma all'utente. Così mi sono andata a cercare un alert di conferma richiamato tramite il pulsante ed è questo:
    codice:
        <input type="submit" value="Cancella" onClick="return confirm('Premi il tasto OK se vuoi  cancellare l\'utente\nAltrimenti premi Annulla');">
    Questo pulsante all'interno di una pagina con una struttuta all'osso funziona correttamente ma se lo inserisco nella mia pagina più complessa no, proprio non mi compare l'alert, mi viene cancellato l'utente immediatamente.
    Io proprio non riesco a capire cosa diavolo cambia perchè sono scritti nella solita identica maniera.
    Vi posto anche la parte del codice php dove sta la form con il pulsante:
    Codice PHP:
    echo <<<MESS                 
           
    <div class="paginazioneUtenti">                                  
           <
    form action="cancellaUtente.php" id="cancellaUtente" method="POST">
        <
    table class="registration">                                      MESS;                               
       
    $sql="SELECT bla bla bla";                              
       
    $res=mysql_query($sql,$conn) or die ("Errore!".mysql_error());          
       while (
    $records=mysql_fetch_assoc($res)){                                   
    echo <<<
    MESS     
         
    <input type="hidden" name="IDutente" value="$records[IDutente]"/>     
         <
    tr><td>....</td> <td>....</td></tr>
         .....
    MESS;                                 
       }                               
       echo <<<MESS
              </table>
              
                                    
              <input type="submit" name="submit" value="Cancella" class="pulsante"  onClick="return confirm('Premi il tasto OK se vuoi  cancellare l\'utente\nAltrimenti premi Annulla');"/></form>                                                   
    MESS; 
    Non so proprio che fare Una mano per favore?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Ho i miei dubbi che possa funzionare in una qualunque pagina... e' il principio che e' sbagliato, le istruzioni legate all'evento onclick vengono eseguite ma qualunque valore ritornino viene sempre e comunque effettuato l'invio del form.

    Le istruzioni per funzionare devono essere legate all'evento onsubmit del form:

    <form ... onsubmit="return confirm('Premi il tasto OK se vuoi cancellare l'utente\nAltrimenti premi Annulla');">


    ciao

    ps: assegnare name="submit" al pulsante submit e' quanto di piu' sbagliato possa esistere... i nomi non devono essere parole riservate quali, appunto, gli oggetti della pagina o metodi o nomi di funzione....
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Originariamente inviato da br1
    Ho i miei dubbi che possa funzionare in una qualunque pagina... e' il principio che e' sbagliato, le istruzioni legate all'evento onclick vengono eseguite ma qualunque valore ritornino viene sempre e comunque effettuato l'invio del form.

    Le istruzioni per funzionare devono essere legate all'evento onsubmit del form:

    <form ... onsubmit="return confirm('Premi il tasto OK se vuoi cancellare l'utente\nAltrimenti premi Annulla');">


    ciao

    ps: assegnare name="submit" al pulsante submit e' quanto di piu' sbagliato possa esistere... i nomi non devono essere parole riservate quali, appunto, gli oggetti della pagina o metodi o nomi di funzione....
    Eppure funziona nel primo caso...ho modificato come dici te ma non funziona lo stesso

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Traduci "non funziona" Non fa la richiesta? non invia il form? lo invia sempre? il server non riceve i parametri? ...?

    Inoltre devi postare il codice cosi' come lo riceve il browser: se posti il sorgente in linguaggio lato server il risultato e' influenzato dalle variabili in gioco e non predicibile... oltre che essere incomprensibile a chi non usa quel linguaggio.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Originariamente inviato da br1
    Traduci "non funziona" Non fa la richiesta? non invia il form? lo invia sempre? il server non riceve i parametri? ...?

    Inoltre devi postare il codice cosi' come lo riceve il browser: se posti il sorgente in linguaggio lato server il risultato e' influenzato dalle variabili in gioco e non predicibile... oltre che essere incomprensibile a chi non usa quel linguaggio.

    ciao
    Non compare l'alert quando clicco sul pulsante, ma la form viene viene inviata correttamente e mi cancella immediatamente il record dal database.
    Ho cambiato come aveva detto Br1 e dalla sorgente viene scritto così:
    codice:
    <form action="cancellaUtente.php" id="cancellaUtente" method="POST" onsubmit="return confirm('Premi il tasto OK se vuoi  cancellare l\'utente Altrimenti premi Annulla');">
    COsa può essere sbagliato?

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Se metti un'apice nel testo il javascript lo considera come delimitatore di testo... lo devi far precedere dal carattere di escape \
    codice:
    <form action="cancellaUtente.php" id="cancellaUtente" method="POST" 
    onsubmit="return confirm('Premi il tasto OK se vuoi  cancellare l\\'utente Altrimenti premi Annulla');">
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Originariamente inviato da br1
    Se metti un'apice nel testo il javascript lo considera come delimitatore di testo... lo devi far precedere dal carattere di escape \
    codice:
    <form action="cancellaUtente.php" id="cancellaUtente" method="POST" 
    onsubmit="return confirm('Premi il tasto OK se vuoi  cancellare l\\'utente Altrimenti premi Annulla');">
    ciao
    Si l'ho fatto, ma avendo riportato la sorgente non compariva...

  8. #8
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Mi viene un dubbio... per l'invio utilizzi un normale tasto submit o image, vero? Perche' se richiami il metodo submit() del form l'evento non scatta, occorre agire in altro modo.

    Comunque, per evitare questo stillicidio e batti/ribatti di precisazioni/repliche, metti una pagina di prova sul server e posta il link...

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  9. #9
    Originariamente inviato da br1
    Mi viene un dubbio... per l'invio utilizzi un normale tasto submit o image, vero? Perche' se richiami il metodo submit() del form l'evento non scatta, occorre agire in altro modo.

    Comunque, per evitare questo stillicidio e batti/ribatti di precisazioni/repliche, metti una pagina di prova sul server e posta il link...

    ciao
    Per l'invio uso un normale tasto di submit. Ehm non so come mettere la pagina di prova sul server a vostra disposizione, perchè io lo uso sul mio pc...

  10. #10
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Questo funziona come ci si aspetta...
    codice:
    <form action="http://127.0.0.1/test.asp" id="cancellaUtente" method="POST" 
    onsubmit="return confirm('Premi il tasto OK se vuoi  cancellare l\'utente Altrimenti premi Annulla');">
    <input type=submit>
    </form>
    Se nella tua pagina non va dipende ovviamente da qualcosa presente nella tua pagina... prova a farne una semplicissima e includi progressivamente gli elementi che devi... finche' genera l'errore

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.