Supportnet Computer
Planet of Tech

Supportnet / Forum / Webseiten/HTML

Pulldown-Menue soll Seiten im Hauptframe öffnen lassen??





Frage

Hallo! Habe ein Framset mit einem Pulldown-Menue. User wählt aus und geht auf Schalfläche "Klick". Dann öffnet sich die neue Seite als _top. Diese soll sich aber im Hauptframe öffnen. Als Formulareigenschaften habe ich "http://www.meinserver.de/xyz/auswahl1.htm" angegeben. Irgentwie muss man doch bestimmen können, wo er die neue Seite öffnet. Aber wie??? Besten Dank für Infos und Ideen.

Antwort 1 von IRON

Ja klar...statt _top muss bei TARGET der Name des Hauptframes stehen.

Antwort 2 von jensfriend

hmm WO und WIE einstellen? Habe in Eigenschaften von Formular/Dropmenue nix gefunden.

Antwort 3 von jensfriend

son Ding ist hier auf der Startseite von Supportnet gemeint: unter GRUPPEN, Hilfe Forum steht da drin

Antwort 4 von Yoram

Das könnte so aussehen (dabei ist zu beachten, dass Dein Hauptframe vielleicht nicht Hauptframe heisst:

<SCRIPT language=JavaScript>
<!-- Verstecken für alte Browser --
 function surfto(form) {
        var myindex=form.select1.selectedIndex
        if (form.select1.options[myindex].value != "0") {
        window.open(form.select1.options[myindex].value, target="Hauptframe");}
}
//-->
</SCRIPT>


ciao

Antwort 5 von jensfriend

Besten Dank! Habe JS eingebaut auf der Seite in der das Pulldown-Menue ist. Dies ist oben auf der Frameseite (zusätzlich noch links ein Hauptmenue). Also 3 Seiten im Frameset.

Leider öffnet er wieder als top die neue Seite. Lt. Frameeingenschaften heisst der Frame in dem die neue Seite angezeigt werden soll "Hauptframe".

Hmm. Über weitere Antworten freue ich mich sehr. Besten Dank.

Antwort 6 von semi

Hier eine Funktion um die Framenummer anhand des Namens zu ermitteln.

function getFrameNoByName(name) {
  var f = top.frames;
  for(var i=0; i<f.length; i++)
    if(f.name.toUpperCase() == name.toUpperCase())
      return i;
  return -1;
}


Anwendung in Deinem Fall:

var url = form.select1.options[form.select1.selectedIndex].value;
var fn = getFrameNoByName("Hauptframe");
 
if(fn>=0)
  top.frames[fn].location = url;
else
  alert("Hauptframe gibt es nicht.");

Wobei form.select1.options nicht bei allen Browsern funktioniert!

Verwende lieber
<select id="target" ...>
und dann

var select = document.getElementById("target");
var url = select.options[select.selectedIndex].value;


Gruss,
Michael

Antwort 7 von Yoram

Sende doch mal die Frameseite zu, oder lade sie hoch und poste den Link.

Antwort 8 von Yoram

Sorry, ich habe jetzt erst gelesen, dass es mit einem "klick" weitergeht. Das gleiche mit klick *g*:

<script language="JavaScript">
<!--
function surfto1(form) {
var myindex=form.dest.selectedIndex
window.open(form.dest.options[myindex].value, target="Hauptframe");
}
//-->
</SCRIPT>
<FORM NAME="myform">


Ob der Formularname der gleiche ist, weiss ich nicht.

ciao