Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: invio form senza nome

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84

    invio form senza nome

    Ho creato una pagina con due combobx dove il secondo carica le vie
    in base al comune selezionato nel primo.

    codice tipo nella pagina...
    codice:
    <form name="form" id="form" action="" method="post">
      <select name="com_o" onchange="aggiorna_o();" >
        <option>comune 1</option>
        <option>comune 2</option>
        <option>comune 3</option>
        <option>comune 4</option>
      </select>
      <select name="via_o">
        <option>via 1</option>
        <option>via 2</option>
        <option>via 3</option>
        <option>via 4</option>
      </select>
    <a href="javascript: submit_passaggio();>invia</a>
    </form>
    codice javascript....
    codice:
    function aggiorna_o(){
    	document.form.via_o.value = "";
    	document.form.submit();
    	}
    
    function aggiorna_d(){
    	document.form.via_d.value = "";
    	document.form.submit();
    	}
    
    function submit_passaggio(){
    	document.form.action="pagina.asp";
    	document.form.submit();				
    	}
    fin qui tutto bene, solo che ora vorrei validare la pagina xhtml 1.1

    e mi da l'errore sull' attributo name="form1" e ovviamente se tolgo il nome al form mi viene si validata la pagina ma non funziona piu lo script....

    non so dove battere la testa per risolvere il problema

    come posso fare??

  2. #2
    Tu nel codice hai messo name="form" e non name="form1" prova a cambiarlo in "form1" e metti anche id="form1"

    e di conseguenza cambia tutto il javascript as esempio:
    ....
    document.form .via_o.value = "";

    .....diventa.....

    document.form1 .via_o.value = "";

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84
    no, non mi sono spiegato......
    sono daccordo con quello che dici tu,

    il problema è :

    non posso mettere il nome nel tag form se voglio validare il documento xhtml 1.1

    al dilà dell' errore che ho fatto io ora a scrivere il codice il giochino funzia, ma smette di funzionare quando tolgo il nome dal tag form

    da cosi che funziona ma non è valido xhtml 1.1:
    <form name="nomeform" id="form" action="" method="post">

    a cosi che è valido xhtml 1.1 ma non funziona pù:
    <form id="form" action="" method="post">

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84
    ho sbagliato ancora a scrivere.......

    da cosi che funziona ma non è valido xhtml 1.1:
    <form name="nomeform" id="nomeform" action="" method="post">


    a cosi che è valido xhtml 1.1 ma non funziona pù:
    <form id="nomeform" action="" method="post">

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Esiste un array di tutti i form presenti in una pagina. Non è pratico come riferirsi al form tramite il suo nome, però visto che hai problemi di validazione...

    document.forms

    è tale array. Ai vari elementi vi accedi col metodo classico

    document.forms[0] è il primo form della pagina
    document.forms[1] è il secondo... e così via.

    Oppure passa il riferimento del form alla funzione con this.form come parametro (di un vero submit, non so se vada anche con il link contenuto all'interno del form stesso)
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84

    document.forms

    è tale array. Ai vari elementi vi accedi col metodo classico

    document.forms[0] è il primo form della pagina
    document.forms[1] è il secondo... e così via.
    vediamo se ho capito qualcosina....js non è che lo capisca molto

    questo:

    function aggiorna_o(){
    document.form.via_o.value = "";
    document.form.submit();
    }





    dovrebbe diventare circa cosi?

    function aggiorna_o(){
    document.form[0].via_o.value = "";
    document.form[0].submit();
    }


    zero immagino vada bene perchè c'è solo un form nella pagina ok?



    Oppure passa il riferimento del form alla funzione con this.form come parametro (di un vero submit, non so se vada anche con il link contenuto all'interno del form stesso)
    ossia....

    onchange="aggiorna_o(this.form);"

    quindi:

    function aggiorna_o(form){
    document.form.via_o.value = "";
    document.form.submit();
    }


    oppure non ho capito nulla?

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Sì quasi ad entrambe: nel senso che

    - dovresti NON utilizzare le parole riservate al posto dei nomi di variabili, altrimenti il motore di javascript ci fa a pungi. In altre parole, non utilizzare "form" come nome di variabile

    - quando passi il riferimento al form, non serve più document.form, basta il nome della variabile:
    codice:
      function pippo_il_form(f) { //
        f.nome_campo.value="pippo";
      }
    Che richiamerai con (o qualcosa del genere)
    codice:
    <form....>
      <input type="button" onclick="pippo_il_form(this.form);" />
    </form>
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84
    OK

    capito qualcosina, funzia alla grande.

    era interessante anche l'array comunque, almeno quello l'ho interpretato megliio?

    oppure tutto da rifare?

    Grazie per la dritta

  9. #9
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    L'array andava bene...tranne per il fatto che è plurale

    document.forms[n]
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2001
    Messaggi
    84
    Very thx 4 all

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.