Maik: Verweise einer Auswalliste im selben Fenster/Frame öffnen

Hallo!

Habe folgendes Problem:
Wie bekommt man eine HTML-Datei mit einer Auswahlliste dazu,
die Links im eigenen Fenster zu öffnen?
Der Quelltext unten funktioniert problemlos, wenn die Auswahlliste
in einem anderen Frame als die zu ladende Datei ist.
Ich möchte aber erreichen, daß die Datei mit der Auswahlliste ersetzt wird.
Wer kann helfen?

<HTML>
<HEAD>
<TITLE></TITLE>
<script language="JavaScript">
<!--
function CheckAuswahl()
{

for(i=0;i<document.KathegorieSubmit.Auswahl.length;++i)
if(document.KathegorieSubmit.Auswahl.options[i].selected == true)

if(document.KathegorieSubmit.Auswahl.options[i].value == 1)
     {
     parent.frames[...].location.href = "1.htm";
     }
   else
     {
     if(document.KathegorieSubmit.Auswahl.options[i].value == 2)
       {
      parent.frames[...].location.href = "2.htm";
       }
     else
       {
       if(document.KathegorieSubmit.Auswahl.options[i].value == 3)
         {
         parent.frames[...].location.href = "3.htm";
         }
       else
         {
         if(document.KathegorieSubmit.Auswahl.options[i].value == 4)
           {
           parent.frames[...].location.href = "4.htm";
         }
       }
     }
}
-->
</script>
</HEAD>
<BODY>

<form NAME="KathegorieSubmit" onSubmit="CheckAuswahl()">
        <SELECT SIZE="1" NAME="Auswahl">
        <OPTION value="1" SELECTED>Auswahl 1</OPTION>
        <OPTION value="2">Auswahl 2</OPTION>
        <OPTION value="3">Auswahl 3</OPTION>
        <OPTION value="4">Auswahl 4</OPTION>
        </SELECT>
<input LANGUAGE="JavaScript1.1" type=image src="button.gif" width="45" height="28" border="0" onClick="CheckAuswahl()"></form>
</BODY>
</HTML>

  1. N' Abend,

    Ich möchte aber erreichen, daß die Datei mit der Auswahlliste ersetzt wird.

    Ich denke, da musst du einfach im Script jeweils den Teil parten.frames[...]. durch self ersetzen. Dann müsste es gehen. Sieht dann so aus:

    <script language="JavaScript">
    <!--
    function CheckAuswahl()
    {

    for(i=0;i<document.KathegorieSubmit.Auswahl.length;++i)
     if(document.KathegorieSubmit.Auswahl.options[i].selected == true)

    if(document.KathegorieSubmit.Auswahl.options[i].value == 1)
          {
          self.location.href = "1.htm";
          }
        else
          {
          if(document.KathegorieSubmit.Auswahl.options[i].value == 2)
            {
           self.location.href = "2.htm";
            }
          else
            {
            if(document.KathegorieSubmit.Auswahl.options[i].value == 3)
              {
              self.location.href = "3.htm";
              }
            else
              {
              if(document.KathegorieSubmit.Auswahl.options[i].value == 4)
                {
                self.location.href = "4.htm";
              }
            }
          }
     }
     -->
    </script>

    Probier es mal so aus. :)

    Schöne Grüße,
    Ben

    1. Selber n'abend... ;-)

      Gut gemeint, aber wenn es so einfach wäre, hätte ich
      die Frage nicht gestellt. Ich habe so ziemlich sämtliche
      Syntax-Fragen ausgetestet - nix is.
      Ich ahne mehr sowas in die Richtung, daß bei der Funktion noch eine Art
      "return"-Problem herrscht, denn die Seite wird beim Aufrufen anscheinend
      selbst nochmal geladen.
      Weiß jemand Rat?

      1. Hi,

        die Antwort von Ben müßte eigentlich Dein Problem lösen. Aber nur dann, wenn Du die komische for-Schleife entfernst. Die führt dazu, daß versucht wird, die Seite wiederholt zu laden.

        barfuesser