Hej, Jag googlade lite och hittade denna koden. Ingen som vet? Det ser ut som att den ska fungera med bokstäver... hur yttrar sig felet? Ja du....nu funkade det....Filtrera listbox
Så här vill jag göra:
Först har jag en textbox(singleline).
Under den har jag en listbox med ett par hundra namn.
Skriver jag tex "And" i textboxen vill jag filtrera listboxen på alla namn som börjar på "And".
Så fort jag lägger till/tar bort en bokstav skall listboxen filtreras om.
Jag vill inte göra postback mellan varje bokstav.
Någon som vet hur man kan göra detta, eller någonstans man kan läsa om det?
Först tänkte jag Ajax, men det kanske fungerar med javascript? Om Ajax, finns det sådana här exempel någonstans? Kan inte Ajax över huvud taget....
Eller om det är javascript, kan någon ge något exempel?
Det kanske finns färdiga komponenter för detta?
Tackar på förhand!!
/JockeSv: Filtrera listbox
Den funkar exakt som jag vill, förutom en sak. den verkar bara funka med numeriska tal.
Jag vill ju att den ska ta bokstäver.
Jag är för dålig på javascript för att se vad jag ska ändra.
Någon som vet hur man modifiera för att den ska funka med bokstäver?
Här är koden:
<code>
<html>
<head>
<title>Filter script</title>
<script>
allNumbers = "1,12,13,14,12332,12321,789789,23434,123,9841,123,3245,1243,1223,23,4234,1".split(',')
allNumbers.sort();
function showAll(theForm) {
theForm.sel.options.length=0;
for (i=0;i<allNumbers.length;i++) {
theForm.sel.options.length++
theForm.sel.options[theForm.sel.options.length-1]= new Option(allNumbers[i],allNumbers[i]);
}
}
saveVal="";
function getSel() {
var theForm=document.myForm;
var val = theForm.myField.value;
if (val == saveVal) return;
saveVal=val;
theForm.sel.options.length=0;
for (i=0;i<allNumbers.length;i++) {
if (allNumbers[i].indexOf(val)==0) {
theForm.sel.options.length++
theForm.sel.options[theForm.sel.options.length-1]= new Option(allNumbers[i],allNumbers[i]);
}
}
}
function initPage() {
showAll(document.myForm);
document.myForm.myField.focus()
saveVal=document.myForm.myField.value;
setInterval('getSel()',10)
}
</script>
</head>
<body onLoad="initPage()">
<form name="myForm">
<input type="text" name="myField" value="">
<br>
<select name="sel" multiple size="10" style="width:150px;">
<option value="">-------------
<option value="">-------------
<option value="">-------------
<option value="">-------------
</select>
</form>
</body>
</html>
</code>Sv:Filtrera listbox
/Jocke
P.S. Inser nu att detta naturligtvis borde ligga under "Javascript" istället, sorry!Sv: Filtrera listbox
Sv:Filtrera listbox
Jag måste gjort något konstigt när jag ändrade i strängen(allNumbers).
Ska inte störa mer.....:)
Tack!
/Jocke