2009-11-07 21 views
11

In che modo due moduli possono condividere gli stessi input? Ho due forme, una per due percorsi diversi ... se volevo che l'utente inserisse il suo nome, ma solo una volta .... come potrebbero entrambe le forme ottenere su questo campo?Due moduli condividono lo stesso input

+1

Per chi fosse curioso, il [ 'attributo form'] (https: // developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-form) può solo specificare un modulo. Non può essere usato per questo. – 4castle

risposta

9

Utilizzando JavaScript è possibile impostare il valore di un campo su un altro.

Qualcosa di simile:

document.form2.input.value = this.value; 

Put che il codice nell'evento onblur per il primo modulo.

Quindi:

<form name="form1"> 
<input type="text" name="input" onblur="document.form2.input.value = this.value;" /> 
</form> 

<form name="form2"> 
<input type="text" name="input" onblur="document.form1.input.value = this.value;" /> 
</form> 
+0

speravo di fare questo senza JS ma che cosa fossero :) – tarnfeld

+0

Purtroppo non c'è altro modo, ho modificato il mio post per includere un esempio di copia-incolla. –

+0

Resisti. La [textarea pagina w3schools] (https://www.w3schools.com/tags/tag_textarea.asp) dice (in modo semplificato) 'Element = textarea, Attribute = form, Value = form_id, Description =" Specifica uno o più forma l'area di testo appartiene a "' Perché non è possibile specificare un elenco di moduli? Risolverà molto il mio problema attuale @WaleedAmjad – Charlie

6

In HTML5 si poteva farlo senza JavaScript. Eseguire una forma con una serie di ingressi, e basta fare due pulsanti presentare utilizzando un diverso FormAction attributi found on Mozilla Developer Network come questo:

<form> 
    <input name="fname" type="text" /> 

    <input type="submit" value="button one" formaction="script_one.php"> 
    <input type="submit" value="button two" formaction="script_two.php"> 
</form> 
Problemi correlati