Avatar billede ameq Nybegynder
08. august 2003 - 16:40 Der er 22 kommentarer og
1 løsning

søg i array med javascript

Hej jeg har et problem/opgave =)
Jeg leder efter et script hvor jeg bare en tekst box.
I den box kan jeg skrive f.eks. per så kommer alle "poster" i mit array frem i et Ifram...
så kan jeg trykke på linket og komme ind på en under side... på under side er der nye linke (det kan jeg selv lave) når jeg trykker på linket skal der kommer to forskellige tekst op i to ander tekst fælt...

array bliver lavet ud af en database
Avatar billede Slettet bruger
09. august 2003 - 09:25 #1
Et alternativ til din idé:
http://www.phoenixv.dk/scripts/scr01.html
Avatar billede ameq Nybegynder
10. august 2003 - 16:40 #2
jo tak men hvis jeg to eller tre tekst box der skal en tekst ud i når jeg har valgt et punkt
Avatar billede Slettet bruger
10. august 2003 - 16:45 #3
Altså når man klikker på et punkt, skal der stå en tekst i to eller tre andre tekstbokse på siden?
Avatar billede ameq Nybegynder
10. august 2003 - 20:37 #4
yes men andre ord... Den box du har lavet lige nu... styrre to eller tre andre boxe...
Avatar billede Slettet bruger
12. august 2003 - 16:45 #5
Hvad med dette så:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Dynamisk select-boks</title>
<script type="text/javascript">
valg = new Array();

valg[0] = new Array();
  valg[0][0] = "Albatros"; //Overskrift
  valg[0][1] = "Albatros1"; //Tekstfelt 1
  valg[0][2] = "Albatros2"; //Tekstfelt 2
  valg[0][3] = "Albatros3"; //Tekstfelt 3
valg[1] = new Array();
  valg[1][0] = "Anders"; //Overskrift
  valg[1][1] = "Anders1"; //Tekstfelt 1
  valg[1][2] = "Anders2"; //Tekstfelt 2
  valg[1][3] = ""; //Tekstfelt 3 (tomt)
valg[2] = new Array();
  valg[2][0] = "And";
  valg[2][1] = "And1";
  valg[2][2] = "And2";
  valg[2][3] = "And3";
valg[3] = new Array();
  valg[3][0] = "Asger";
  valg[3][1] = "Asger1";
  valg[3][2] = "Asger2";
  valg[3][3] = "Bla bla bla";
valg[4] = new Array();
  valg[4][0] = "Bi";
  valg[4][1] = "Bi1";
  valg[4][2] = "Bi2";
  valg[4][3] = "";
valg[5] = new Array();
  valg[5][0] = "Blomst";
  valg[5][1] = "Blomst1";
  valg[5][2] = "Blomst2";
  valg[5][3] = "";
valg[6] = new Array();
  valg[6][0] = "Bølle";
  valg[6][1] = "Bølle1";
  valg[6][2] = "Bølle2";
  valg[6][3] = "Bølle3";

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][0].toLowerCase().indexOf(felt.value.toLowerCase()) == 0)
      selOpts[selOpts.length] = new Option(valg[i][0], "valg" + i);
}

function skiftTekst(sel) {
  val = sel.options[sel.selectedIndex].value;
  nr = parseInt(val.charAt(val.length - 1));
  f = sel.form;
  f.felt1.value = valg[nr][1];
  f.felt2.value = valg[nr][2];
  f.felt3.value = valg[nr][3];
}
</script>
</head>
<body onLoad="document.frm.sFelt.focus();">
<h2>Dynamisk select-boks</h2>
<form name="frm">
<table cellspacing="10">
<tr>
<td>
<input type="text" name="sFelt" onKeyUp="opdater(this);" style="width: 150px;" /><br />
<select multiple="multiple" size="8" name="sel" style="width: 150px;" onchange="skiftTekst(this);">
<script type="text/javascript">
for (i = 0; i < valg.length; i++)
  document.write('<option value="valg' + i + '">' + valg[i][0] + '</option>');
</script>
</select><br /><br />
<input type="submit" value="Send" />
</td>
<td style="vertical-align: top;">
<input type="text" readonly="readonly" name="felt1" /><br />
<input type="text" readonly="readonly" name="felt2" /><br />
<input type="text" readonly="readonly" name="felt3" />
</td>
</tr>
</table>
</form>
</body>
</html>
Avatar billede ameq Nybegynder
13. august 2003 - 11:10 #6
jo tak
Avatar billede ameq Nybegynder
19. august 2003 - 10:16 #7
jeg har brugt dit script lidt...
og har brugt for en til lille funktion... =)

Når jeg har valt i den første box, ville jeg godt have et array kommer over i en ny mulit select box, og der kan jeg så vælg hvad der skal stå i min tekst fæler...

kan det laves?
Avatar billede ameq Nybegynder
19. august 2003 - 10:21 #8
og hvis du klikker på en select i muti select boxen kan det det fulde navn komme til at stå i boxen ?
Avatar billede Slettet bruger
19. august 2003 - 19:45 #9
Jeg forstår ikke helt... Prøv at komme med et eksempel.
Avatar billede ameq Nybegynder
20. august 2003 - 08:14 #10
Søg Fælter
______  ______ 
|      | |      | Tekst Fælter
|Første| |Anden |
|Select| |Select| Tekst Fælter
| Box  | | Box  |
|______| |______| Tekst Fælter

Når du "søger" i den første...
Så bliver liste mendre...
Når man så vælger en i den første, bliver liste mendre i den anden...
Når så må vægler en i den anden, kommer der en tekst ude i tekst fælterne...
Avatar billede ameq Nybegynder
20. august 2003 - 15:31 #11
er det forklaring nok? eller skal jeg prøve igen?
Avatar billede Slettet bruger
20. august 2003 - 16:35 #12
Det bliver en svær opgave.
Jeg har ikke lyst til at prøve kræfter med det i dag. Det kan dog sagtens løses, så jeg håber, jeg snart får tid (inden for de næste dage).
Avatar billede ameq Nybegynder
21. august 2003 - 08:05 #13
=) okey, skriver du når du har kigget på det?
Avatar billede Slettet bruger
21. august 2003 - 15:30 #14
Ja, men du skal ikke regne med noget. Jeg er presset tidsmæssigt i øjeblikket.
Avatar billede ameq Nybegynder
25. august 2003 - 09:31 #15
HJÆLP!!!
Hvis mit array er over 10 så bliver min 10 nr 0 hvorfor det?
Avatar billede ameq Nybegynder
25. august 2003 - 09:32 #16
og jeg har brugt for der er over 10 =( du skal nok få flere point!
Avatar billede ameq Nybegynder
25. august 2003 - 09:41 #17
jeg tror jeg har løst det...

kan det passe ved at jeg sætte 0 til at være [000] og 1 til at være [001] og 10 til at være [010] så bliver det løst?
Avatar billede ameq Nybegynder
25. august 2003 - 09:57 #18
okey men løsing ude bliver arrayet nr 8 og 9, kan slet ikke se hvorfor!
Avatar billede ameq Nybegynder
25. august 2003 - 11:17 #19
har fundet min fejl
function skiftTekst(sel) {
  val = sel.options[sel.selectedIndex].value;
  nr = parseInt(val.charAt(val.length - 1));
  f = sel.form;
  f.felt1.value = valg[nr][1];
  f.felt2.value = valg[nr][2];
  f.felt3.value = valg[nr][3];
  f.felt4.value = valg[nr][4];

}

parseInt(val.charAt(val.length - 1)) skal være noget andet... ved bare ikke hvad =)
Avatar billede Slettet bruger
26. august 2003 - 15:05 #20
Ja, så langt havde jeg ikke tænkt:

function skiftTekst(sel) {
  val = sel.options[sel.selectedIndex].value;
  nr = parseInt(val.replace(/\D/g, ""), 10);
  f = sel.form;
  f.felt1.value = valg[nr][1];
  f.felt2.value = valg[nr][2];
  f.felt3.value = valg[nr][3];
  f.felt4.value = valg[nr][4];
}
Avatar billede Slettet bruger
26. august 2003 - 15:06 #21
Jeg har i øvrigt ikke overskud til at lave den udvidede version til dig, desværre. :(
Avatar billede ameq Nybegynder
27. august 2003 - 08:58 #22
det er bare okey =)
glad for du melder det ud =)
Avatar billede ameq Nybegynder
27. august 2003 - 09:01 #23
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