Avatar billede rude Nybegynder
08. maj 2003 - 11:55 Der er 5 kommentarer og
1 løsning

select felt - indkredsning af søgning

I et select felt hopper corsuren ned på det ord som starter med det bogstav der tastes. Hvis der så tastes en andet bogstav finder den det ord som starter med dette. Kan man vha javascript få den til at blive på den det første ord, og derefter finde det ord hvor andet bogstav matcher, osv.
Avatar billede dreamcode Nybegynder
08. maj 2003 - 12:12 #1
Det du er ude efter er en combobox, som ikke findes som standard i HTML, men kan konstrueres ved hjælp af et tekstfelt og en div med indholdet.

-DC
Avatar billede rude Nybegynder
08. maj 2003 - 12:29 #2
Den skal helst se ud som et standard HTML select felt, men fungere som beskrevet. Evt noget a'la': http://www.tastselv.toldskat.dk/02/Svur/
Avatar billede Slettet bruger
08. maj 2003 - 13:29 #3
Fx:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Dynamisk select-boks</title>
<script type="text/javascript">
valg = new Array("Albatros", "Anders", "And", "Asger", "Bi", "Blomst", "Benjamin", "Bølle", "Citron", "Cykel", "Flæskestej");

valg.sort();

function opdater(felt) {
  selOpts = felt.form.sel.options;
  selOpts.length = 0;
  for (i = 0; i < valg.length; i++)
    if (felt.value == "" || valg[i].toLowerCase().indexOf(felt.value.toLowerCase()) == 0)
      selOpts[selOpts.length] = new Option(valg[i], valg[i]);
}
</script>
</head>
<body onLoad="document.frm.sFelt.focus();">
<h2>Dynamisk select-boks</h2>
<form name="frm">
<input type="text" name="sFelt" onKeyUp="opdater(this);" style="width: 150px;"><br />
<select multiple="multiple" size="8" name="sel" style="width: 150px;">
<script type="text/javascript">
for (i = 0; i < valg.length; i++)
  document.write('<option value="' + valg[i] + '">' + valg[i] + '</option>');
</script>
</select><br /><br />
<input type="submit" value="Send">
</form>
Indtast forbogstavet p&aring; et af ordene i select-boksen. Hvis der er flere muligheder tilbage, s&aring; pr&oslash;v at indtaste det n&aelig;ste bogstav, osv. Du kan selvf&oslash;lgelig ogs&aring; bare v&aelig;lge en af mulighederne. Et godt script til at vise meget information.<br /><br />
<form>
<input type="button" value="Mark&eacute;r alt" onClick="this.form.ta.select(); this.form.ta.focus();"> <input type="button" value="Kopi&eacute;r" onClick="if (document.all) document.all.ta.createTextRange().execCommand('Copy'); else alert('Virker kun i Internet Explorer!');"><br />
<textarea style="width: 100%; height: 200px;" name="ta" id="ta">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Dynamisk select-boks</title>
<script type="text/javascript">
valg = new Array("Albatros", "Anders", "And", "Asger", "Bi", "Blomst", "Benjamin", "Bølle", "Citron", "Cykel", "Flæskestej");

valg.sort();

function opdater(felt) {
  selOpts = felt.form.sel.options;
  selOpts.length = 0;
  for (i = 0; i < valg.length; i++)
    if (felt.value == "" || valg[i].toLowerCase().indexOf(felt.value.toLowerCase()) == 0)
      selOpts[selOpts.length] = new Option(valg[i], valg[i]);
}
</script>
</head>
<body onLoad="document.frm.sFelt.focus();">
<h2>Dynamisk select-boks</h2>
<form name="frm">
<input type="text" name="sFelt" onKeyUp="opdater(this);" style="width: 150px;"><br />
<select multiple="multiple" size="8" name="sel" style="width: 150px;">
<script type="text/javascript">
for (i = 0; i < valg.length; i++)
  document.write('<option value="' + valg[i] + '">' + valg[i] + '</option>');
</script>
</select><br /><br />
<input type="submit" value="Send">
</form>
</body>
</html></textarea>
</form>
</body>
</html>
Avatar billede Slettet bruger
08. maj 2003 - 13:29 #4
Hov, sorry, der kom for meget ekstra med. Men du kan nok godt finde ud af at sortere det irrelevante fra.
Avatar billede rude Nybegynder
08. maj 2003 - 14:01 #5
Præcis som ønsket, mange tak

/Peter
Avatar billede Slettet bruger
08. maj 2003 - 14:10 #6
Svar
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