Har följande kod Vad förväntar du dig när du sätter size="1". Försök med: Jag förväntar mig inte att rullgardinen skall bli så stor som med size="10". Föresten fungerade min form alldeles utmärkt, den enda funktion jag skulle vilja ha i denna asp snutt var att när man valt en adress så skall den hoppa ner till formen som innehåller<code> <form method="POST" action=""> Sorry. Läste bara rubriken. Det du söker har inget med ASP att göra. Det är java skript. Inte mitt område. Hej!Mera rullgardin!! [Löst]
<code>Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("DB/adresser.mdb")&";"
sql = "select email from adresser order by email asc"
Set Rst = connect.Execute(sql)%>
<form method="POST" action="">
<p><select size="1" name="D1">
<option>adressboken</option>
<%If Not Rst.Eof Then
Do While Not Rst.Eof%>
<option><%response.write rst("email")%></option>
<%
Rst.MoveNext
Loop
End If
Set Connect = Nothing
%>
</code>
När jag sedan väljer något ur listan hur får jag det då till en textruta? som ser ut så här.
<code><form method="POST" action="">
<td width="73">Adress</td><td width="404">
<input type="text" name="mail" size="40"></td>
</code> Tacksam för svar.//JockeSv: Mera rullgardin!!
<code>
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("DB/adresser.mdb")&";"
sql = "SELECT email FROM adresser ORDER BY email ASC"
Set Rst = connect.Execute(sql)
%>
<form method="POST" action="">
<p><select size="10" name="D1">
<option>adressboken</option>
<%
Do Until Rst.Eof
Response.write "<option>" & rst("email") & "</option>"
Rst.MoveNext
Loop
Rst.Close
Set Rst =Nothing
Connect.Close
Set Connect = Nothing
%>
</select>
</form>Sv: Mera rullgardin!!
<tr><td width="73">Adress</td><td width="404">
<input type="text" name="mail" size="40"></td>
</code>
//jockeSv: Mera rullgardin!!
Sv: Mera rullgardin!!
Här kommer ett tips på hur du löser ditt problem,
Du måste använda ett litet JavaScript för att hantera detta. Lägg in detta script i HEAD-taggen:
<script language="JavaScript">
function ToTextBox()
{
var ValtIndex = document.form1.D1.selectedIndex;
var TextFromSelect = document.form1.D1.options[ValtIndex].text;
var TextToInput = TextFromSelect
document.form1.mail.value = TextToInput;
}
</script>
Ändra sedan din kod till denna:
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" &Server.MapPath("DB/adresser.mdb")&";"
sql = "SELECT email FROM adresser ORDER BY email ASC;"
Set Rst = connect.Execute(sql)
%>
<form name="form1" method="post" action="">
<p><select name="D1" onChange="javascript:ToTextBox();">
<option selected>Adressboken</option>
<%
Do While Not Rst.Eof
Response.Write "<option>" & Rst("email") & "</option>"
Rst.MoveNext
Loop
Rst.Close
Set Rst=Nothing
Connect.Close
Set Connect=Nothing
%>
</select><br><br>
Valt från (select): <input type="text" name="mail" value="">
</form>
Observera att du måste ange name på formuläret!
Här ovan finns textrutan i samma formulär som select, om du har deni ett annat formulär på samma sida måste namnet på detta formulär anges i scriptet.
Lycka till!