Hi!
document.writeln zerstört doch genauso das voherige Dokument, oder?
Ich habe jetzt verucht das script in eine tabelle zu packen, dachte das es vielleicht darin dann auch geöffnet würde. NIX. Kann ich nicht einfach nicht nur die suchergebnisse ausgeben, sondern auch noch die site drumherum? dann wärs ja egal ob die site gekillt wird. Hier ein bissl Quelltext:
<td>
<form name="form">
<input type="text" size=30 name="search">
<input type="button" name="submit" value="Search" onClick="validate_form()">
<input type="reset" name="reset" value="Clear">
<font color="#008040" face="Verdana, Arial, Helvetica, sans-serif"><strong>
</strong></font>
</form>
</td>
</tr>
<tr>
<td> </td>
<td><font color="#008040" face="Verdana, Arial, Helvetica, sans-serif"><strong>
<script>
function searchLinks(links, keyword){
document.writeln("<BODY BGCOLOR='ffffff' TEXT='000000' LINK='IhreFarbe' VLINK='IhreFarbe' ALINK='IhreFarbe'>")
document.writeln("Suchergebnisse für Suchwort: <strong>" +keyword +"</strong><br><br>");
for (var q=1; q<=links.length; q++) {
if (links[q].URL.toLowerCase().indexOf(keyword) != -1){
document.write("<a href="+ links[q].URL +">" + links[q].Name + "</a> - ");
document.write( links[q].Desc + "<br>");
continue;
}
if (links[q].Desc.toLowerCase().indexOf(keyword) != -1) {
document.write("<a href=" + links[q].URL +">" + links[q].Name + "</a> - ");
document.write( links[q].Desc + "<br>");
continue;
}
if (links[q].Name.toLowerCase().indexOf(keyword) != -1) {
document.write("<a href=" + links[q].URL +">" + links[q].Name + "</a> - ");
document.write( links[q].Desc + "<br>");
continue;
}
}
}
</script>
Dazu noch die andere funktion damit's vollständig ist:
<script language="javascript">
var key = "";
function makeEntry (){
this.Name="";
this.URL = "";
this.Desc = "";
this.Category = "";
return this;
}
function makeArray(n) {
this.length = n;
for (var k = 1; k <= n; k++) {
this[k] = "";
}
return this;
}
function makeLinks(size) {
this.length = size;
for (var r=1; r<= size; r++) {
this[r] = new makeEntry();
this[r].Name = namesArray[r];
this[r].URL = urlsArray[r];
this[r].Desc = descArray[r];
}
return this;
}
var linksize=0
datesArray = new makeArray(linksize);
namesArray = new makeArray(linksize);
urlsArray = new makeArray(linksize);
descArray = new makeArray(linksize);
var arraycount=0
// --- Anfang Daten für "Suchmaschine"
arraycount += 1
urlsArray[arraycount] = "SET.html"
namesArray[arraycount] = "suche auf dieser seite"
descArray[arraycount] = "suche,search,sitesearch"
arraycount += 1
urlsArray[arraycount] = "IhrLink.html"
namesArray[arraycount] = "Ihre Linkbeschreibung"
descArray[arraycount] = "suchwort, suchwort, suchwort ..."
// um weitere Seiten zu Erfassen können die obenstehende Blöcke einfach kopiert werden !
linksize = arraycount;
// ----Ende Daten -------
function validate_form() {
txt = document.form.search.value;
if (txt.indexOf(".") != -1){
alert("Eingabe fehlerhaft! Es wurde ein '.' verwendet"); return;}
if (txt.indexOf(",") != -1){
alert("Eingabe fehlerhaft! Es wurde ein ',' verwendet"); return;}
if (txt.indexOf("@") != -1){
alert("Eingabe fehlerhaft! Es wurde ein '@' verwendet"); return;}
......
else {
jsi = new makeLinks(linksize);
searchLinks(jsi, txt);
document.write("--------------------------------------------------------------------------------");
document.write("Back");
}
}
</script>