Visualizzazione dei risultati da 1 a 8 su 8

Discussione: script non funzionante

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    92

    script non funzionante

    Ecco il codice htm e javascript:

    -----------------------------------------------------------------------------------------
    <html>

    <script>
    function manda(modulo)
    {
    var name = modulo.nome;

    if ((name.length) < 6)
    {
    alert("Nome minimo 6 caratteri");
    modulo.nome.focus();
    }
    else
    {
    modulo.action = "http://localhost:8080/servlet/HelloOne";
    modulo.submit();
    }
    }
    </script>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>index</title>
    </head>

    <body>

    <form name= "modulo" method="POST" onClick = manda(this);>
    <input type="text" name="nome" size="10"><input type="submit" value="Invia" name="invia"><input type="reset" value="Reimposta" name="resetta"></p>
    </form>

    </body>

    </html>
    -----------------------------------------------------------------------------------------

    Perche se inserico meno di 6 caratteri funziona lo stesso?Inoltre basta che appoggio il mouse sulla casella che subito invia dati. L'ho testato su firefox non da errori, ma all'atto pratico non fa quello che dovrebbe, qualcuno ha una spiegazione plausibile?

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    prova a cambiare
    if ((name.length) < 6)

    in
    if ((name.value.length) < 6)

    inoltre cambia
    <form name= "modulo" method="POST" onClick = manda(this);>

    in
    <form name= "modulo" method="POST" onsubmit = return manda(this);>

    e la funzione deve ritornare false nel primo ramo dell'if e true nel secondo
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    togli onClick = manda(this);
    e mettilo nel pulsante submit, il cui type cambierai da 'submit' a semplice 'button'

    inoltre per riferirti al valore in un campo text di name='miocampo'
    devi scrivere document.modulo.miocampo.value

    errore che hai commesso qui:

    --------------------------------------

    var name = modulo.nome;

    if ((name.length) < 6)
    {

    --------------------------------------

    percui cambia con

    --------------------------------------

    var name = modulo.nome;

    if ((name.value.length) < 6)
    {

    --------------------------------------
    si vivono molte vite e si muore una volta sola

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    92
    Che sbadato mi ero dimenticato che il valore si trova in value, ho semplicemente cambiato

    la riga:

    var name = var name = modulo.nome;

    in

    var name = modulo.nome.value;

    adesso tutto funziona solo che comunque quando metto il mouse nella casella comunque tenta di inviarsi senza che abbia premuto il pulsante submit, vorrei capirne il perchè se è possibile.

  5. #5
    le leggi le risposte...?
    si vivono molte vite e si muore una volta sola

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    92
    i seguito entrambi i consigli. Ho cambiato , ma addirittura non parte proprio.

  7. #7
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    puoi postare la pagina intera come è ora dopo le modifiche?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    92
    mi sa che ho capito cosa ho toppato, l'evento deve essere onsubmit piuttosto che onclick adesso è perfetto.

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.