webForumDet fria alternativet

Javascript / Droplist problem

9 svar · 1 248 visningar · startad av giddan

giddanMedlem sedan feb. 20095 inlägg
#1

Hejsan, jag får verkligen inte detta till att fungera. Se om ni hittar vad det beror på.

<SCRIPT LANGUAGE="JAVASCRIPT">

 

    function formHandler(){

    var URL = document.form.char.site.options[document.form.char.site.selectedIndex].value;

    window.location.href = URL;   
	

 

</SCRIPT>
 <form name="form" id="form" action="">
   
   <input name="char" id="char" type='text' size='30' value="">

   <SELECT NAME="site" onchange="formHandler()" SIZE="1" selected>

    <OPTION VALUE="">

      Search with . . .

    <OPTION VALUE="http://www.erig.net/xphist.php"> erig.net

    <OPTION VALUE="http://www.pskonejott.com/otc_display.php"> pskonejott.com

    <OPTION VALUE="http://www.tibia.com/community/?subtopic=character"> tibia.com
	
	<OPTION VALUE="http://tibia.wikia.com/wiki/Special:Search"> tibia.wikia.com

   </SELECT>
  </FORM>

Tack på förhand!

voigtann1Medlem sedan juni 20018 810 inlägg
#2
    function formHandler(){

    var URL = document.form.char.site.options[document.form.char.site.selectedIndex].value;

    window.location.href = URL;

Står ju att du söker efter char.site
vilket inte ser riktigt korrekt ut enligt din struktur.

    function formHandler(){

    var URL = document.form.site.options[document.form.site.selectedIndex].value;

    window.location.href = URL;

Borde fungera bättre (annars kan du sätta ett id på select-elementet) och köra en document.getElementById.

giddanMedlem sedan feb. 20095 inlägg
#3

Tack för det snabba svaret, det fungerar dock inte.
Jag ska förklara hur jag vill ha det.

t.ex om jag skriver "bubble" i textfältet väljer tibia.com så ska sidan

"http://www.tibia.com/community/?subtopic=character&name=bubble" öppnas

om jag väljer erig.net så ska sidan

"http://www.erig.net/xphist.php?player=bubble" öppnas

osv.

nitro2k01Medlem sedan aug. 20037 630 inlägg
#4

Förutom det felet voigtann1 påpekade så saknar du } som ska stänga funktionen. Dessutom kan du skicka med en referens till elementet så slipper du leta rätt på med document.etc... (Funkar dock bara inifrån en onxxx-handler) Jag passade även på att göra om HTML4 till XHTML. (Genom att skriva taggarna med små bokstäver samt sumpa language till förmån för type)

<script type="text/javascript">
function formHandler(el){ 
    var URL = el.options[el.selectedIndex].value; 
    window.location.href = URL;
}
</script>
   <select name="site" onchange="formHandler(this)" size="1" selected>

Annars såsom voigtann1 sade:

<script type="text/javascript">
function formHandler(){ 
    var URL = document.form.site.options[document.form.site.selectedIndex].value;
    window.location.href = URL;
}
</script>
nitro2k01Medlem sedan aug. 20037 630 inlägg
#5

För övrigt så flyttas tråden från Webbutveckling - Övrigt till Javascript, DHTML.

giddanMedlem sedan feb. 20095 inlägg
#6

nitro2k01 skrev:

Förutom det felet voigtann1 påpekade så saknar du } som ska stänga funktionen. Dessutom kan du skicka med en referens till elementet så slipper du leta rätt på med document.etc... (Funkar dock bara inifrån en onxxx-handler) Jag passade även på att göra om HTML4 till XHTML. (Genom att skriva taggarna med små bokstäver samt sumpa language till förmån för type)

<script type="text/javascript">
function formHandler(el){ 
    var URL = el.options[el.selectedIndex].value; 
    window.location.href = URL;
}
</script>
   <select name="site" onchange="formHandler(this)" size="1" selected>

Annars såsom voigtann1 sade:

<script type="text/javascript">
function formHandler(){ 
    var URL = document.form.site.options[document.form.site.selectedIndex].value;
    window.location.href = URL;
}
</script>

Tack för svaret... Men mitt stora problem kvarstår fortfarande.

När jag väljer ett alternativ i droplisten är meningen att den ska ta informationen i textfältet och lägga till det efter den valda länken.

som jag skrev innan

t.ex om jag skriver "bubble" i textfältet väljer tibia.com så ska sidan

"http://www.tibia.com/community/?subtopic=character&name=bubble" öppnas

om jag väljer erig.net så ska sidan

"http://www.erig.net/xphist.php?player=bubble" öppnas

voigtann1Medlem sedan juni 20018 810 inlägg
#7

Läs vad din funktion gör, din kod säger bara: gå till sidan som value har i din select box.

Du får ju bygga om funktionen och även texten som är dina länkar, och bygga ihop vad din input-text är ihop med dina values i din select-element.

Exempelvis:

window.location.href = URL + document.getElementById("char");

.

giddanMedlem sedan feb. 20095 inlägg
#8

voigtann1 skrev:

Läs vad din funktion gör, din kod säger bara: gå till sidan som value har i din select box.

Du får ju bygga om funktionen och även texten som är dina länkar, och bygga ihop vad din input-text är ihop med dina values i din select-element.

Exempelvis:

window.location.href = URL + document.getElementById("char");

.

Okej!
Det som händer nu är att den endast lägger till [object] efter URL adressen...

Förstår verkligen inte alls varför..

lagt upp det här

http://giddan.com/test.html

voigtann1Medlem sedan juni 20018 810 inlägg
#9

document.getElementById("char").value;

skall det vara, du får läsa lite vad getElementById gör, den retunera ett objekt.

giddanMedlem sedan feb. 20095 inlägg
#10

voigtann1 skrev:

document.getElementById("char").value;

skall det vara, du får läsa lite vad getElementById gör, den retunera ett objekt.

Tack! Fungerar alldeles utmärkt!

Genererad på 373 ms · cache AV · v20260730165559-full.f96bc7eb