Visualizzazione dei risultati da 1 a 10 su 10

Discussione: Doppio 'onclick'

  1. #1
    Utente di HTML.it L'avatar di Freedom
    Registrato dal
    Jan 2003
    Messaggi
    839

    Doppio 'onclick'

    Ciao a tutti!!!

    Mi trovo con un submit di un form che deve fare due cose:

    - al click aprire un 'confirm'
    - e se 'ok', inviare i dati tramite ajax.

    Domanda: se entrambe queste due funzioni debbono essere avviate dallo stesso evento, come posso evitare l'invio ajax se ko?
    Sicut Nox Silentes

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    if(confirm("vuoi procedere?")) //chiamata ajax
    else //errore

  3. #3
    Utente di HTML.it L'avatar di Freedom
    Registrato dal
    Jan 2003
    Messaggi
    839
    Originariamente inviato da Vindav
    if(confirm("vuoi procedere?")) //chiamata ajax
    else //errore

    Ciao Vindav!

    Io ho questa funzione di confirm:

    function conferma(){
    return confirm("ATTENZIONE!!! \n\n La categoria selezionata verra eliminata. Procedere?");
    }

    Dove ce le inserisco le condizioni?
    Sicut Nox Silentes

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    dipende quando devi effettuare la chiamata ajax, se va effettuata subito dopo il confirm ti basta fare:

    codice:
    var isConfirm = confirm("ATTENZIONE!!! \n\n La categoria selezionata verra eliminata. Procedere?");
    if(isConfirm) //chiamata ajax
    
    return isConfirm;

  5. #5
    Utente di HTML.it L'avatar di Freedom
    Registrato dal
    Jan 2003
    Messaggi
    839
    Grazie Vindav, funziona a meraviglia!

    Scusa se me ne sto approffittando, ma ho un altra domanda...

    Siccome questo sistema mi serve per poter eliminare o solo aggiornare dei campi in ajax io vorrei far in modo che se si decida di eliminare una riga, questa, dopo l'elaborazione nella paagina ajax, non venga più visualizzata.

    Ho pensato ad una cosa del genere:

    codice:
    <tr <%=request("cc")%> >
    <form name="MyForm" action="bb.asp" method="post" onsubmit="xmlhttpPost('bb.asp', 'MyForm', 'MyResult', 'Wait...'); return false;">
    <td><input type="text" name="nome" value="" /></td>
    <td><input type="text" name="cognome" value="" /></td>
    <td><input id="action" type="hidden" name="action" value="" /></td>
    <td><input type="submit" name="send_button" value="Send" onclick="return conferma()" /></td>
    <td><input type="submit" name="send_button" value="Send" onclick="document.getElementById('action').value='edit';" /></td>
    </form>
    </tr></div>
    Dove '<%=request("cc")%> ' è una variabile, con la classe 'display:none' che volevo passargli dalla pagina ajax (bb.asp), ma ovviamente non funziona.

    Ci sono dei metodi diversi?

    Grazie in anticipo
    Sicut Nox Silentes

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    non è mai buona cosa inserire un form all'interno di una riga di una tabella. il tag html 'table' al suo interno dovrebbe contenere soltanto righe(tr) e colonne(td) e cmq non capisco cio che vorresti fare...

  7. #7
    Utente di HTML.it L'avatar di Freedom
    Registrato dal
    Jan 2003
    Messaggi
    839
    Originariamente inviato da Vindav
    non è mai buona cosa inserire un form all'interno di una riga di una tabella. il tag html 'table' al suo interno dovrebbe contenere soltanto righe(tr) e colonne(td) e cmq non capisco cio che vorresti fare...
    Vorrei che una volta deciso di eliminare la categoria, l'intera riga in questione (cioè l'intero TR), non si veda più.
    Sicut Nox Silentes

  8. #8
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    continuo a non capire, sei troppo vago nelle tue spiegazioni... la chiamata ajax con questo centra qualcosa? cmq per nascondere il tr ti basta modificare lo stile da script, se devi farlo dopo la chiamata ajax basta che ci aggiungi questa riga: mioOggettoTr.style.display = 'none';

    codice:
    var isConfirm = confirm("ATTENZIONE!!! \n\n La categoria selezionata verra eliminata. Procedere?");
    if(isConfirm){ 
    //chiamata ajax
    mioOggettoTr.style.display = 'none';
    }

  9. #9
    Utente di HTML.it L'avatar di Freedom
    Registrato dal
    Jan 2003
    Messaggi
    839
    Oddio Vindav...

    io ad ajax invio dall'intestazione del form, così:
    <form name="MyForm" action="bb.asp" method="post" onsubmit="xmlhttpPost('bb.asp', 'MyForm', 'MyResult', 'Wait...'); return false;">

    quindi, 'chiamata ajax' la lascio vuota?

    Poi, 'mioOggettoTr', sarebbe il nome della classe associata al TR? in pratica va messa <tr class="mioOggettoTr">?

    Scusa per il disturbo e grazie di nuovo per la pazienza.
    Sicut Nox Silentes

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    codice:
    <form name="MyForm" action="bb.asp" method="post" onsubmit="xmlhttpPost('bb.asp', 
    'MyForm', 'MyResult', 'Wait...'); document.getElementById('prova').style.display = 'none'; return false;">
    <table>
    <tr id="prova">
    <td><input type="text" name="nome" value="" /></td>
    <td><input type="text" name="cognome" value="" /></td>
    <td><input id="action" type="hidden" name="action" value="" /></td>
    <td><input type="submit" name="send_button" value="Send" onclick="return conferma()" /></td>
    <td><input type="submit" name="send_button" value="Send" onclick="document.getElementById('action').value='edit';" /></td>
    </tr>
    </table>
    </form>

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.