Domanda

Qui dice che è richiesto

http://www.w3schools.com/tags/att_form_action.asp .

Ma vedo che i moduli vengono inviati anche se non specifico un attributo azione e il modulo viene inviato alla pagina corrente che è esattamente ciò che voglio.

È stato utile?

Soluzione

Il requisito è solo per standard .È perfettamente possibile fare quello che vuoi su una pagina e non seguire gli standard.Le cose potrebbero non essere visualizzate o funzionare correttamente se lo fai, ma probabilmente lo faranno.L'obiettivo è seguirli e l'idea è che se li segui, la tua pagina sempre funzionerà;non devi preoccuparti di nulla.

Sì, il modulo è obbligatorio per avere un attributo di azione in HTML4.Se non è impostato, il browser probabilmente utilizzerà lo stesso metodo che gli fornisce una stringa vuota.Dovresti davvero impostare action="" che è HTML4 perfettamente valido, segue gli standard e ottiene lo stesso esatto risultato.

In HTML5, puoi effettivamente specificare un'azione sul pulsante di invio stesso.Se non ce n'è uno, utilizza l'azione del form e se non è impostato, il valore predefinito è la stringa vuota (nota che non puoi impostare esplicitamente l'azione su una stringa vuota in HTML5).

Altri suggerimenti

Tecnicamente si tratta di una violazione della specifica HTML 4, ma tutti i browser invieranno al mittente della risposta se non viene specificata alcuna azione.Sono d'accordo che non è un'idea intelligente fare affidamento su di esso, ma funziona.

MODIFICA: come mi è stato fatto notare che questa domanda è contrassegnata come HTML 5: In HTML 5 elencano l'attributo di azione come non più richiesto: http://www.w3schools.com/html5 / att_form_action.asp che è conforme alle specifiche HTML 5.

// avviso di resurrezione del thread

Per estendere la risposta di Animuson ...

Se dopo che tutti gli attributi button formaction e form action sono stati valutati, se "action" ancora valuta "stringa vuota", allora dalla sezione specifica HTML5.2 4.10.21.3 il punto 8 afferma:

Se action è una stringa vuota, lascia che action sia l'URL del documento del file documento del modulo.

quando si tratta di inviare il modulo, che è quello che volevi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top