Ho un menù a tendina: select
Ho anche un campo di testo: msg_salagrande
Ecco quello che vorrei combinare: ho delle voci nel menù a tendina. Vorrei, cliccando ad esempio "Paolo" che nel campo di testo comparisse scritto "Paolo".
Come devo fare?
Ho un menù a tendina: select
Ho anche un campo di testo: msg_salagrande
Ecco quello che vorrei combinare: ho delle voci nel menù a tendina. Vorrei, cliccando ad esempio "Paolo" che nel campo di testo comparisse scritto "Paolo".
Come devo fare?
S W I N U B
<script type="text/javascript">
<!--
function blob(valore){
document.forms[0].elements[0].value=valore
}
//-->
<script>
.....
<form action="blabla" method="boh">
<select name="blibli" onchange="blob(this.options[this.selectedIndex].value)">
<option ecc.>...</option>
ecc
</select>
<input type="text" name="blublu">
...
</form>
le form e gli elementi di ciascuna form sono trattati come array a se stanti
ad esempio, document.forms[0] è il primo modulo presente nel documento (secondo l'ordine nel codice), document.forms[0] è il secondo modulo, ecc.
a sua volta ogni document.forms[i] è un array i cui componenti sono i tag di input del modulo:
elements[0] è il primo tag (nella fattispecie il tag select)
elemenst[1] è il secondo tag (nella fattispecie il tag input)
ecc.
naturalmente invece di identificarli come item di un array puoi usare il nome dato con l'attributo NAME
Originariamente inviato da naig
<script type="text/javascript">
<!--
function blob(valore){
document.forms[0].elements[0].value=valore
}
//-->
<script>
.....
ERRATA CORRIGE:
il tag INPUT è identificato da
document.forms[0].elements[1]
(visto che l'ho messo come secondo tag nel codice)
me ne sono accorto dopo che ho postato![]()
ehm...
questo è il menù a tendinacodice:<select name="select" onchange="blob(this.options[this.selectedIndex].value)"> <option>Comandi...</option> <option value="&dado4">Dado da 4</option> </select>
mettendo il tuo script e l'onchange, se clicco su dado da 4 verrà &dado4 nell'input?
S W I N U B
non è che puoi farmi vedere come si imposta?non me la cavo molto con queste cose
codice:<html> <head> <link rel="stylesheet" href="hostyle.css"> <title>SalaGrande</title> <script language=JavaScript> function passaDie() { if(document.form.select.options[document.form.select.options.selectedIndex].value!=0) { document.form.msg_salagrande.value=document.form.select.options[document.form.selection.options.selectedIndex].value; } } </script> </head> <body bgcolor="#FFFF99" link="#0000FF" text="#000000" vlink="#0000FF" alink="#0000FF"> <table width="700" border="0" cellspacing="0" cellpadding="0" height="46"> <tr> <td valign="middle" height="65"> <FORM method="post" action="addmsg_salagrande.asp?mess=true" name="form"> <div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="1"> Messaggio: <Input type=text value="" size="40" name="msg_salagrande"> </font><font size="1"><font face="Verdana, Arial, Helvetica, sans-serif">Comandi:</font></font> <font size="1"> <select name="select" onchange="blob(this.options[this.selectedIndex].value)"> <option>Comandi...</option> <option value="&dado4">Dado da 4</option> </select> <input type="hidden" value="<%=Session("nome_pg")%>" name="nome_salagrande"> <input type="hidden" value="<%=Session("id")%>" name="scheda_salagrande"> <input type="hidden" value="<%= DatePart("h",Time()) %> : <%= DatePart("n",Time()) %>" name="data_salagrande"> <font face="Verdana, Arial, Helvetica, sans-serif"> <input type=submit name="invia" value="Invia"> </font></font><font size="1"><font face="Verdana, Arial, Helvetica, sans-serif"> <input type=button value="Aggiorna" name="reload"> <input type=button value="Usare la chat" name="info"> </font></font> </div> </FORM> </td> </tr> </table> </body> </html>
S W I N U B
immagino che voglia spostare il valore nell'input "msg_salagrande"... è sufficiente inserire la funzione (dovrebbe essere evidenziata in viola). in teoria trattandosi di una sola riga di comando potresti fare tutto all'interno di onchange, ma così hai un codice più leggibile.Originariamente inviato da Swinub
non è che puoi farmi vedere come si imposta?non me la cavo molto con queste cose
credo che non ci dovrebbero essere problemi, almeno spero.
<html>
<head>
<link rel="stylesheet" href="hostyle.css">
<title>SalaGrande</title>
<script language=JavaScript>
function passaDie() {
if(document.form.select.options[document.form.select.options.selectedIndex].value!=0) {
document.form.msg_salagrande.value=document.form.s elect.options[document.form.selection.options.selectedIndex].value;
}
}
function blob(valore){
document.forms[0].elements[0].value=valore;
}
</script>
</head>
<body bgcolor="#FFFF99" link="#0000FF" text="#000000" vlink="#0000FF" alink="#0000FF">
<table width="700" border="0" cellspacing="0" cellpadding="0" height="46">
<tr>
<td valign="middle" height="65">
<FORM method="post" action="addmsg_salagrande.asp?mess=true" name="form">
<div align="center">[b]<font face="Verdana, Arial, Helvetica, sans-serif" size="1">
Messaggio:
<Input type=text value="" size="40" name="msg_salagrande">
</font><font size="1"><font face="Verdana, Arial, Helvetica, sans-serif">Comandi:</font></font>
<font size="1">
<select name="select" onchange="blob(this.options[this.selectedIndex].value)">
<option>Comandi...</option>
<option value="&dado4">Dado da 4</option>
</select>
<input type="hidden" value="<%=Session("nome_pg")%>" name="nome_salagrande">
<input type="hidden" value="<%=Session("id")%>" name="scheda_salagrande">
<input type="hidden" value="<%= DatePart("h",Time()) %> : <%= DatePart("n",Time()) %>" name="data_salagrande">
non ho capito invece la funzione passaDie, a occhio e croce dovrebbe funzionare anche quella, richiamandola sempre con un evento onchange del tag select.
Provale entrambe. per richiamare passaDie dovrebbe essere sufficiente
<select name="select" onchange="passaDie()">
non l'ho mai provata, le rare volte che ho gestito un evento onchange associato ad un elemento di un modulo passo il valore o l'indice con this.
si, l'evento onchange su select si avvia nel momento in cui selezioni l'item. naturalmente attraverso il comandoOriginariamente inviato da Swinub
ehm...
questo è il menù a tendinacodice:<select name="select" onchange="blob(this.options[this.selectedIndex].value)"> <option>Comandi...</option> <option value="&dado4">Dado da 4</option> </select>
mettendo il tuo script e l'onchange, se clicco su dado da 4 verrà &dado4 nell'input?
document.forms[0].elements[0].value=nome_variabile_passata_dall'evento
messo nella funzione blob()
al limite puoi poi "passare" lo stato attivo ad un altro elemento, ad esempio alla casella di testo o al pulsante di invio
es. document.forms[0].elements[numero_ordine_elemento].focus();