Zoekscript aanpassen om in hetzelfde scherm te openen

  • Onderwerp starter Onderwerp starter leho
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

leho

Nieuwe gebruiker
Lid geworden
26 mei 2007
Berichten
3
Hallo allen,

Ik heb pas sinds kort dit forum ontdekt en wil meteen een vraagje opwerpen. Ik ben zeer te spreken het onderstaande script, dat ik gebruik om te zoeken in mijn dvd-database, maar wil de zoekresultaten graag in dezelfde pagina laten openen. Nu dacht ik in mijn eenvoud de regel 'win = window.open....." weg te laten en alle win.document.write... regels te wijzigen in document.write... om dit voor elkaar te krijgen.

Helaas werkt dit dus blijkbaar niet zo eenvoudig en heb ik hier duidelijk nog geen kaas van gegeten. Op de één of andere manier opent het script dan wel in dezelfde pagina, maar zonder resultaten weer te geven.

Misschien kan iemand hier wat meer over zeggen?

Groeten, Leo


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<BODY bgcolor="#000000" text="#FFFFFF" VLINK="#FFFFFF" ALINK="#FFFFFF" LINK="#FFFFFF"><BR>

<SCRIPT LANGUAGE="JavaScript">

<!-- Begin
var item = new Array();

/* Breng hieronder de wijzigingen aan met betrekking tot je eigen website.
Je vult in :

De naam van je pagina
De map waarin deze pagina staat, als het in een aparte map staat (dit moet eindigen met /). Staat deze pagina niet in een aparte map, zet er dan niets neer.
Titel van de pagina
Trefwoorden over jouw pagina. Je scheidt ze me een komma
Een toelichting
*/
// "paginanaam","pad","paginatitel","tref,woor,den","commentaar"

c=0; item[c]=new Array("1492 Conquest of Paradise (1992).htm"," ","1492: Conquest of Paradise (1992).","Geregisseerd door Ridley Scott. Met Gerard Depardieu, Armand Assante en Sigourney Weaver. Aktie. 154 minuten.","In 1491 krijgt Christopher Columbus toestemming om met een paar schepen op reis te gaan om nieuwe werelden te ontdekken en kostbaarheden mee terug te nemen.");
c++; item[c]=new Array("2Fast 2Furious (2003).htm"," ","2Fast 2Furious (2003)","Geregisseerd door John Singleton. Met Paul Walker, Tyrese Gibson en Cole Hauser. Aktie / Thriller. 107 minuten.","Na het verliezen van zijn badge, krijgt de snelheidsverslaafde agent Brian O'Connor nog één allerlaatste kans...");
c++; item[c]=new Array("3 Days of the Condor (1975).htm"," ","Three Days of the Condor (1975)","Geregisseerd door Sydney Pollack, met Robert Redford, Faye Dunaway en Cliff Robertson. Thriller. 117 minuten.","Een CIA onderzoeker, Condor, is de enige overlevende van een moordaanslag op zijn afdeling. Hij moet uitvinden wie het gedaan, heeft voordat de moordenaars hem vinden.");

/* Hier geef je de eigenschappen van de pagina met daarop de zoekresultaten aan */

page="<html><head><title>Zoekresultaten</title><link rel=stylesheet href=mijnstylesheet.css></head><body bgcolor='white'><p>Zoekresultaten</p><p align=center>De links openen in dit venster. Je kunt het vorige venster sluiten.</p><center><table border=0 cellspacing=10 width=80%>";


/* Nu komt er een heel stuk code. Hier snap je waarschijnlijk niets van, maar dat is ook niet nodig. */
function search(frm) {
win = window.open("","","titlebar=yes,location=yes,scrollbars=yes,resizable=yes,toolbar=yes,statusbar=yes,menubar=yes");
win.document.write(page);
txt = frm.srchval.value.split(" ");
fnd = new Array(); total=0;
for (i = 0; i < item.length; i++) {
fnd = 0; order = new Array(0, 4, 2, 3);
for (j = 0; j < order.length; j++)
for (k = 0; k < txt.length; k++)
if (item[order[j]].toLowerCase().indexOf(txt[k]) > -1 && txt[k] != "")
fnd += (j+1);
}
for (i = 0; i < fnd.length; i++) {
n = 0; w = -1;
for (j = 0;j < fnd.length; j++)
if (fnd[j] > n) { n = fnd[j]; w = j; };
if (w > -1) total += show(w, win, n);
fnd[w] = 0;
}
win.document.write("</table><br>Totaal gevonden : "+total+"<br></body></html>");
win.document.close();
}
function show(which,wind,num) {
link = item[which][1] + item[which][0];
line = "<tr><td><a href='"+link+"'>"+item[which][2]+"</a><br>";
line += item[which][4] + " " + item[which][3] + "<br></td></tr>";
wind.document.write(line);
return 1;
}
// End -->
</script>

Dat was het stuk dat je in de head zet. Het gedeelte wat nu volgt zet je op de plek waar je het zoekveld wilt hebben.

<form method=get action="javascript:void(0)" onsubmit="search(this); return false;">
<table align="center" border=0 cellspacing=2 valign="middle">
<tr>
<td>
<input type=text name=srchval value="">
</td>
<td>
<input type=submit value="Zoek">
</td>
</tr>
</table>
</form>

Dat was het alweer. Je kunt verder zoveel pagina's als je wilt invoeren, met zoveel keywords als je wilt.



</BODY></HTML>
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan