Avatar billede saviola Nybegynder
18. februar 2003 - 15:33 Der er 4 kommentarer og
1 løsning

rullemenu/listbox

Hvis man har en listbox med 1000 adresser og skal finde Vesterbrogade - så kan man taste "V" og så får man den første adresse der sarter med "V"...kan man opsætte en box således at man kan taste en del af ordet..dvs. "Vest"..og så havner man hos de adresser der starter med "Vest"
Avatar billede olebole Juniormester
18. februar 2003 - 23:30 #1
<ole>

<script type="text/JavaScript">
var lastTest = 0;
function chList( t, s ) {
    var so = s.options;
    for (i=lastTest; i<s.length; i++) {
        if ( so[i].value.indexOf(t.value)==0 ) {
            s.selectedIndex = i;
            lastTest = i;
            break;
        }
    }
}
</script>

<form>
    <select name="sel">
        <option value="a">A</option>
        <option value="ac">Ac</option>
        <option value="b">B</option>
        <option value="ba">Ba</option>
        <option value="bak">Bak</option>
        <option value="baks">Baks</option>
        <option value="bakspejl">Bakspejl</option>
        <option value="h">H</option>
        <option value="ha">Ha</option>
        <option value="hakkish">Hakkish</option>
        <option value="hashkage">Hashkage</option>
    </select>
    <input type="text" onkeyup="chList(this, this.form.sel);" onblur="lastTest=0">
</form>

/mvh
</bole>
Avatar billede olebole Juniormester
18. februar 2003 - 23:46 #2
Hmmm ... hvis/når brugeren finder på at rette i det skrevne, må du hellere bruge dette script:

<script type="text/JavaScript">
var tLen=lastTest=0;
function chList( t, s ) {
    var tv, so = s.options; tv = t.value;
    if ( tv.length<=tLen ) lastTest = 0;
    for (i=lastTest; i<s.length; i++) {
        if ( so[i].value.indexOf(tv)==0 ) {
            s.selectedIndex = i;
            lastTest = i;
            break;
        }
    }
    tLen = tv.length;
}
</script>

/mvh
Avatar billede saviola Nybegynder
20. februar 2003 - 11:24 #3
Min listbox er lavet med VB Script og ser sådan ud...

<% @ Language="VBScript" %>
<% Option Explicit %>

<%

Dim Connection, dsn, sql, recordset

sql = "SELECT * FROM gade"

Set Connection = Server.CreateObject("ADODB.connection")
Set Recordset = Server.CreateObject("ADODB.Recordset")

dsn="dsn=glemt"

connection.Open dsn

Recordset.Open sql, connection

Response.write("<select name=""menu1"">")

Do while not recordset.eof %>

    <option value="<%=recordset("navn")%>"><%=recordset("navn")%></option>

<%
recordset.movenext
Loop

Response.write("</select>")

recordset.Close
Set recordset = nothing
connection.Close
Set connection = Nothing

%>
Avatar billede olebole Juniormester
20. februar 2003 - 12:24 #4
Jeg er ikke helt sikker på, hvad du mener, vi skal bruge de informationer til. Hvordan du genererer select-elementet er helt uden betydning ... det er jo en front-end løsning, du eferlyser  :)
/mvh
Avatar billede saviola Nybegynder
20. februar 2003 - 13:42 #5
Så du mener jeg godt kan få strikket dette sammen, så det virker. Jeg prøver !!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester