Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di xcs
    Registrato dal
    Mar 2001
    Messaggi
    123

    invio form da js con confirm

    Ciao!

    Ho questo script:

    codice:
    function ControlloCheckBox(FirstAction) {	
    	var f = window.document.forms["delmsg"];	
    	pass = false
    	for(i=0; i<f.length; i++) { 
    		if (f[i].type == "checkbox" && f[i].checked) {
    			pass = true; break;
    		} 
    	}	
    	if (pass) return(confirm('Spostare i messaggi selezionati nel cestino?'));
    	else { 
    		alert('Devi selezionare almeno un messaggio!');
    		return false }
    	document.delmsg.action = "delete.asp?a=" + FirstAction + "&b=f";
    	document.delmsg.submit();	
    }
    Se tolgo il confirm il form viene inviato, con il confirm non invia nulla. Dov'è l'errore?
    Grazie.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    forse manca uno spazio

    return (confirm(...

    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

  3. #3
    Utente di HTML.it L'avatar di xcs
    Registrato dal
    Mar 2001
    Messaggi
    123
    Originariamente inviato da br1
    forse manca uno spazio

    return (confirm(...

    ciao
    Ho provato con gli spazi ma nulla... :master:

  4. #4
    Il problema potrebbe essere semplice, visto che non è dato nessun comando alla conferma e neanche alla negazione del confirm; il confirm funziona così:
    se pass è vero visualizza il messaggio che chiede la conferma e se questo è affermativo fai questo, altrimenti se è negativo fai quest'altro, altrimenti se pass è falso fai quest'operazione. Io la vedo così, poi...
    Mi meraviglia che br1 non se ne sia accorto. Forse sta invecchiando.

  5. #5
    Utente di HTML.it L'avatar di xcs
    Registrato dal
    Mar 2001
    Messaggi
    123
    Originariamente inviato da smal
    Il problema potrebbe essere semplice, visto che non è dato nessun comando alla conferma e neanche alla negazione del confirm; il confirm funziona così:
    se pass è vero visualizza il messaggio che chiede la conferma e se questo è affermativo fai questo, altrimenti se è negativo fai quest'altro, altrimenti se pass è falso fai quest'operazione. Io la vedo così, poi...
    Mi meraviglia che br1 non se ne sia accorto. Forse sta invecchiando.
    Intendi una cosa simile?

    codice:
    function ControlloCheckBox(FirstAction) {	
    	var f = window.document.forms["delmsg"];	
    	pass = false
    	for(i=0; i<f.length; i++) { 
    		if (f[i].type == "checkbox" && f[i].checked) {
    			pass = true; break;
    		} 
    	}	
    	if (pass); {
                    return(confirm('Spostare i messaggi selezionati nel cestino?'));
                    if (confirm); {
    	                document.delmsg.action = "delete.asp?a=" + FirstAction + "&b=f";
    	                document.delmsg.submit();
                    }
    	} else { 
    		alert('Devi selezionare almeno un messaggio!');
    		return false;
            }	
    }
    Però così non funzia...

  6. #6
    codice:
    if (pass) {
                    if (confirm('Spostare i messaggi selezionati nel cestino?')) {
    	                document.delmsg.action = "delete.asp?a=" + FirstAction + "&b=f";
    	                document.delmsg.submit();
                    }
    Forse...

  7. #7
    prova così:

    codice:
    function ControlloCheckBox(FirstAction) {	
    	var f = window.document.forms["delmsg"];	
    	pass = false
    	for(i=0; i<f.length; i++) { 
    		if (f[i].type == "checkbox" && f[i].checked) {
    			pass = true; break;
    		} 
    	}	
    	if (pass) {
            if (confirm('Spostare i messaggi selezionati nel cestino?')) {
     document.delmsg.action = "delete.asp?a=" + FirstAction + "&b=f";
    	document.delmsg.submit();
    }
    }
    	else { 
    		alert('Devi selezionare almeno un messaggio!');
    		return false; 
     }
    }
    ciao

  8. #8
    Utente di HTML.it L'avatar di xcs
    Registrato dal
    Mar 2001
    Messaggi
    123
    Grazie sia a small che var!

    Così funziona perfettamente!

  9. #9
    Il fatto è che per come l'avevi impostato tu (if(confirm)) gli dicevi che confirm era una variabile booleana vera, cosa assolutamente errata.

  10. #10
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998

    @ smal

    Accetto senza batter ciglio l'appunto rivoltomi, tristemente vero, ma ci tengo a precisare che la sintassi indicata da xcs e da me corretta

    return (confirm('Spostare i messaggi selezionati nel cestino?'));

    e' perfettamente valida , semmai la mia colpa risiede nel fatto di non aver letto attentamente l'intero script e aver ritenuto, erroneamente, che lo stesso fosse associato all'evento onsubmit del form.

    Ti invito a rileggere e rivedere le considerazione che fai nel tuo ultimo post... per nulla vere in un ambiente ad oggetti quale quello del javascript.

    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.