Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [jsp] finestra alert

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    86

    [jsp] finestra alert

    Ciao volevo sapere se era possibile fare direttamente in jsp ciò che in javascript corrisponderebbe al lancio dell' "alert".
    In particolare vorrei che durante la pressione del bottone di invio dei dati del form, venga lanciata la finestrella d'errore.
    Grazie

  2. #2
    non si può fare per un semplice motivo...jsp -> lato server e javascript -> lato client

  3. #3
    si può fare se ho capito bene la domanda, ecco:


    <html>
    <script>
    function validate(form)
    {
    if(form.codice.value=="")
    {
    window.alert("Inserire il codice dell'insegnamento");
    return false;
    }
    if(form.crediti.value=="")
    {
    window.alert("Inserire i crediti");
    return false;
    }
    if(form.anno1.value=="")
    {
    window.alert("Inserire l'anno accedemico");
    return false;
    }
    if(form.anno2.value=="")
    {
    window.alert("Inserire l'anno accedemico");
    return false;
    }
    return true;
    }
    </script>
    <form method="POST" action="./confermaAggiungiEsame.jsp" onsubmit="return validate(this);">

  4. #4
    si ok questo lo sapevamo, ma le jsp centrano poco xò

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    86
    Grazie penso che abbiate proprio colto nel segno!!!


    Ciaoooo

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    86
    uffa mi dite cosa c'è che non va??
    codice:
    <body bgcolor="#009999">
    
    <form name="form" method="post" onSubmit="return valida();" action="register_ok.jsp">
    Nome
    
    <input type="text" name="nome">
    
    Nick
    
    <input type="text" name="nick">
    
    Password
    
    <input type="password" name="password">
    
    email
    
    <input type="text" name="email">
    
    <input type="submit" name="Submit" value="Invia">
    </form>
    <script type="text/javascript">
    function valida() {
    if(document.form.nome.value.length<4||document.form.name.value.length>20) {
    		alert("Il campo Nome deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else if(document.form.nick.value.length<4||document.form.nick.value.length>20) {
    		alert("Il campo Nick deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else if(document.form.password.value.length<4||document.form.password.value.length>20) {
    		alert("Il campo Password deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else return true;
    }
    </script>
    </body>
    </html>
    Il problema è che se nella casella nome c'è il numero giusto di caratteri e nelle altre caselle no, i controlli successivi vengono saltati e quindi non mi lancia la finestrella d'errore!!
    Perché questo???

  7. #7
    Utente di HTML.it L'avatar di netarrow
    Registrato dal
    Apr 2004
    Messaggi
    1,425
    codice:
    function valida() {
    if(document.form.nome.value.length<4||document.form.name.value.length>20) {
    		alert("Il campo Nome deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else if(document.form.nick.value.length<4||document.form.nick.value.length>20) {
    		alert("Il campo Nick deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else if(document.form.password.value.length<4||document.form.password.value.length>20) {
    		alert("Il campo Password deve essere compreso tra i 4 e i 20 caratteri");
    		return false;
    } else return true;
    }
    questo cmq è js quindi siamo OT, cmq non sono esperto di javascript, ma penso che i concetti base li conservi, se tu hai

    if(è vero) {
    fai qualcosa
    } else if(è vero) ecc...

    dal momento il secondo if verrà fatto solo quando il primo sarà falso, se il primo if è giusto, ovvero ha la grandezza minima il testo, il secondo verrà saltato portandoti subito al return che ti fa uscire alla funzione.

    Inoltre se dentro gli if metti return false, quel return ti farà uscire dalla funzione senza fare i controlli sucessivi.

    Quindi prova a sostituire i return false con una var flag che all'inizio imposti a true e a false quando gli if sono veri, alla fine della funzione fai return flag, poi prova a togliere gli else.

    Sennò fatti spostare

    Imparare è un'esperienza, tutto il resto è solo informazione. (Albert Einstein)

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 © 2024 vBulletin Solutions, Inc. All rights reserved.