Avatar billede marzman Nybegynder
03. august 2004 - 16:12 Der er 18 kommentarer og
1 løsning

Søge form

Jeg er i gang med sådan en søge form!

Men når man skriver noget i feltet skal man trykke på knappen søg for at den søger... hvordan får man den til at søge med enter ???

Source code:


<script language="JavaScript">
<!--

function startSearch(){
searchString = document.searchForm.searchText.value;
if(searchString != ""){
searchEngine = document.searchForm.whichEngine.selectedIndex + 1;
finalSearchString = "";

if(searchEngine == 1){
finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
}
if(searchEngine == 2){
finalSearchString = "http://av.yahoo.com/bin/query?p=" + searchString + "&hc=0&hs=0";
}
if(searchEngine == 3){
finalSearchString = "http://www.excite.com/search.gw?trace=a&search=" + searchString;
}
if(searchEngine == 4){
finalSearchString = "http://www.infoseek.com/Titles?qt=" + searchString + "&col=WW&sv=IS&lk=noframes&nh=10";
}
if(searchEngine == 5){
finalSearchString = "http://www.lycos.com/cgi-bin/pursuit?adv=%26adv%3B&cat=lycos&matchmode=and&query=" + searchString + "&x=45&y=11";
}
if(searchEngine == 6){
finalSearchString = "http://www.altavista.com/cgi-bin/query?pg=q&what=web&fmt=.&q=" + searchString;
}
if(searchEngine == 7){
finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
}

location.href = finalSearchString;
}
}


// -->
</script>

<form name="searchForm" target="_blank">

<input name="searchText" type="text" size="10">

<select name="whichEngine" size="1">
<option selected>Jubii </option>
<option>Yahoo! </option>
<option>Excite </option>
<option>Infoseek </option>
<option>Lycos </option>
<option>Altavista </option>
<option>Jubii test </option>
</select>

<input type="button" value="Søg" onClick="startSearch()">

</form>
Avatar billede roenving Novice
03. august 2004 - 16:24 #1
-- så skal du lægge det i action på formen og lave din søgebutton til en submit ...

<form name="searchForm" action="java script:startSearch()" target="_blank">

<input name="searchText" type="text" size="10">

<select name="whichEngine" size="1">
<option selected>Jubii </option>
<option>Yahoo! </option>
<option>Excite </option>
<option>Infoseek </option>
<option>Lycos </option>
<option>Altavista </option>
<option>Jubii test </option>
</select>

<input type="submit" value="Søg">

</form>

-- måske skal vi også over i noget med onsubmit ...
Avatar billede marzman Nybegynder
03. august 2004 - 16:30 #2
så kan jeg ikke bruge _blank da det er javascript ???!
Avatar billede roenving Novice
03. august 2004 - 17:01 #3
<form name="searchForm" action="java script:void(0)" onsubmit="window.open(startSearch(),'search','width:400,height:300,status=no');return false;" target="_blank">

-- og så:

}

//location.href = finalSearchString;
return finalSearchString;
}
}
Avatar billede marzman Nybegynder
03. august 2004 - 17:29 #4
virker ikke... ellers prøvat skrive den fulde kode !!!
Avatar billede roenving Novice
03. august 2004 - 18:22 #5
Det virker da fint hos mig ?-)

-- lige bortset fra at popupstopperen har en stor betydning, og der ikke skal bruges kolon'er winFeatures-strengen med =-tegn:

'width=400,height=300,status=no'
Avatar billede marzman Nybegynder
03. august 2004 - 18:57 #6
ok... det er nok det...
Avatar billede marzman Nybegynder
03. august 2004 - 19:00 #7
men kan du ikke lige skrive hele koden...

Den åbner nemlig bare et nyt vindue og skriver java script:void(0), siden kunne ikke vises
Avatar billede roenving Novice
03. august 2004 - 19:01 #8
Kolon'erne betød bare at det blev et standard browser-vindue, men en popupstopper vil alt efter de indstiller man har stoppe en javascript window.open ...
Avatar billede roenving Novice
03. august 2004 - 19:03 #9
-- i din javascript-blok har du eet sted:

location.href = finalSearchString;

-- det skal erstattes af:

//location.href = finalSearchString;
return finalSearchString;


-- og så skal formtagget erstattes af:

<form name="searchForm" action="java script:void(0)" onsubmit="window.open(startSearch(),'search','width=400,height=300,status=no');return false;" target="_blank">

-- og din søgeknap erstattes af:

<input type="submit" value="Søg">
Avatar billede marzman Nybegynder
03. august 2004 - 21:03 #10
nopp den virker ikke....

min kode nu:

<script language="JavaScript">
<!--

function startSearch(){
searchString = document.searchForm.searchText.value;
if(searchString != ""){
searchEngine = document.searchForm.whichEngine.selectedIndex + 1;
finalSearchString = "";

if(searchEngine == 1){
finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
}
if(searchEngine == 2){
finalSearchString = "http://av.yahoo.com/bin/query?p=" + searchString + "&hc=0&hs=0";
}
if(searchEngine == 3){
finalSearchString = "http://www.excite.com/search.gw?trace=a&search=" + searchString;
}
if(searchEngine == 4){
finalSearchString = "http://www.infoseek.com/Titles?qt=" + searchString + "&col=WW&sv=IS&lk=noframes&nh=10";
}
if(searchEngine == 5){
finalSearchString = "http://www.lycos.com/cgi-bin/pursuit?adv=%26adv%3B&cat=lycos&matchmode=and&query=" + searchString + "&x=45&y=11";
}
if(searchEngine == 6){
finalSearchString = "http://www.altavista.com/cgi-bin/query?pg=q&what=web&fmt=.&q=" + searchString;
}
if(searchEngine == 7){
finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
}

//location.href = finalSearchString;
return finalSearchString;
}
</script>

<form name="searchForm" action="java script:void(0)" onsubmit="window.open(startSearch(),'search','width=400,height=300,status=no');return false;" target="_blank">


<input name="searchText" type="text" size="10">

<select name="whichEngine" size="1">
<option selected>Jubii </option>
<option>Yahoo! </option>
<option>Excite </option>
<option>Infoseek </option>
<option>Lycos </option>
<option>Altavista </option>
<option>Jubii test </option>
</select>

<input type="submit" value="Søg">

</form>
Avatar billede roenving Novice
03. august 2004 - 21:10 #11
Præcis den kode virker hos mig, men f.eks. infoseek og excite redirecter, og yahoo svarede slet ikke på urlen ...

-- men i alle tilfælde kan man nå at se, at den faktisk sender den rigtige url !-)
Avatar billede marzman Nybegynder
04. august 2004 - 15:05 #12
du bliver nød til at fortælle mig hvad der er galt med den gode oven for... det er sådan den ser ud nu...
Avatar billede roenving Novice
04. august 2004 - 15:11 #13
Når jeg laver en copy/paste til et dokument virker det helt problemfrit ...
Avatar billede marzman Nybegynder
04. august 2004 - 19:32 #14
Den åbner bare et nyt vindue hvor der står: java script:void(0)
Avatar billede roenving Novice
04. august 2004 - 19:49 #15
Sådan går det, når man holder vinduer åbne ,-(

<script language="JavaScript">
function startSearch(){
  searchString = document.searchForm.searchText.value;
  if(searchString != ""){
    searchEngine = document.searchForm.whichEngine.selectedIndex + 1;
    finalSearchString = "";

    if(searchEngine == 1){
      finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
    }
    if(searchEngine == 2){
      finalSearchString = "http://av.yahoo.com/bin/query?p=" + searchString + "&hc=0&hs=0";
    }
    if(searchEngine == 3){
      finalSearchString = "http://www.excite.com/search.gw?trace=a&search=" + searchString;
    }
    if(searchEngine == 4){
      finalSearchString = "http://www.infoseek.com/Titles?qt=" + searchString + "&col=WW&sv=IS&lk=noframes&nh=10";
    }
    if(searchEngine == 5){
      finalSearchString = "http://www.lycos.com/cgi-bin/pursuit?adv=%26adv%3B&cat=lycos&matchmode=and&query=" + searchString + "&x=45&y=11";
    }
    if(searchEngine == 6){
      finalSearchString = "http://www.altavista.com/cgi-bin/query?pg=q&what=web&fmt=.&q=" + searchString;
    }
    if(searchEngine == 7){
      finalSearchString = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
    }

    return finalSearchString;
  }
}
</script>

-- og ikke indrykker sin hierarkiske kodning, så kan man ikke se småfejl i lukning af funktioner o.l.

Desuden kan det faktisk gøres mere overskueligt, og betydelig kortere:

<script language="JavaScript">
function startSearch(f){
  var searchString = f.searchText.value;
  var engine = new Array();
  var searchEngine = f.whichEngine.selectedIndex;
  if(searchString == "")return false;
  engine[engine.length] = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
  engine[engine.length] = "http://av.yahoo.com/bin/query?p=" + searchString + "&hc=0&hs=0";
  engine[engine.length] = "http://www.excite.com/search.gw?trace=a&search=" + searchString;
  engine[engine.length] = "http://www.infoseek.com/Titles?qt=" + searchString + "&col=WW&sv=IS&lk=noframes&nh=10";
  engine[engine.length] = "http://www.lycos.com/cgi-bin/pursuit?adv=%26adv%3B&cat=lycos&matchmode=and&query=" + searchString + "&x=45&y=11";
  engine[engine.length] = "http://www.altavista.com/cgi-bin/query?pg=q&what=web&fmt=.&q=" + searchString;
  engine[engine.length] = "http://soeg.jubii.dk/res.asp?startnummer=1&soegeord=" + searchString + "&service=jubii";
  return engine[searchEngine];
}
</script>
Avatar billede roenving Novice
04. august 2004 - 19:50 #16
Hov, så skulle form-tagget jo også med:

<form name="searchForm" action="java script:void(0)" onsubmit="s=startSearch(this);if(!s)return false;window.open(s,'search','width=400,height=300,status=no');return false;" target="_blank">
Avatar billede marzman Nybegynder
17. januar 2006 - 17:51 #17
dødt projekt er der nogle der vil have points.
Avatar billede roenving Novice
17. januar 2006 - 18:29 #18
Oki '-)
Avatar billede roenving Novice
17. januar 2006 - 19:04 #19
Tak for point ;~}
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