• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[ERLEDIGT] Linkziel über ein select bestimmen

peternmb

Mitglied
Hallo,

ich habe auf meiner Webseite mehrere selects für bestimmte Auswahlmöglichkeiten.
Nun möchte ich eines davon zusätzlich für eine bestimmte Verlinkung nutzen.
Der Link soll je nach dem ausgewählten select auf ein bestimmtes Ziel verweisen.
Zur Verdeutlichung habe ich ein kleines Demo erstellt:
www.hildegarda.de/TEST2
Code:
<!DOCTYPE html>
<html lang="de">
<head>
  <meta charset="utf-8">
  <title>Test Linkauswahl</title>
</head>
<body style="height: 100%;">
<table style="text-align: left; width: 100%; height: 80px;" border="0" cellpadding="0" cellspacing="0">
  <tbody>
    <tr>
      <td style="vertical-align: top;">
            <h1>Test für Linkauswahl<br></h1>
        </td>
        <td>   
            <select size='1' id='auswahl' name='Auswahl'>
                <option value='01' selected='selected'>Auswahl A</option>
                <option value='02'>Auswahl B</option>
                <option value='03'>Auswahl C</option>
            </select>
        </td>       
        <td style="vertical-align: middle; text-align: center; width: 125px;"><a href="seite2.html" target="Linkfeld"><img style="border: 0px solid ; width: 75px; height: 75px;" alt="Link zu google" src="link.gif"></a><br>
        </td>
    </tr>
  </tbody>
</table>
<iframe name="Linkfeld" body="" bgcolor="#E0E0E0" src="seite.html" height="600" width="100%"></iframe>
</body>
</html>
 
Werbung:
Und wo kommst du da jetzt nicht weiter ?
Du nimmst an besten javascript,
liest das select aus,
und fügst es in dein iframe wieder rein.

EDIT:
Oder willst du einen Link mit der auswahl aus den Select zusammen bauen ?
 
der Link ist eine PHP-Datei und dieser möchte ich das was im select gewählt ist als Parameter, mit der Endung ".txt" übergeben.

Oder willst du einen Link mit der auswahl aus den Select zusammen bauen ?
nein, das wird zwar auch gemacht - funktioniert dank deiner Hilfe auch - brauche ich aber nicht für diesen Link.
 
Werbung:
Kommt mir bekannt vor :D Gibt es da einen Zusammenhang mit deinen Threads über txt-Dateien und Datatables?
Ja, gehört alles zusammen und funktioniert soagar prima :wink:
Ich hatte eigentlich nur eine Verlinkung über die Auswahl der selects hier geplabt.
Es wird dabei durch die Auswahl der selects ein Link auf eine statische HTML-Seite mit einer Tabelle zusammengebaut und in einem iFrame angezeigt.

Aber jetzt, da ich die Möglichkeiten der Datatables kenne, möchte ich das zusätzlich einbauen.
 
Meinst du das so ?
ja, genau das meine ich - mir fehlen aber die Kenntnisse deinen Code in mein Script einzubinden.

Wie muss das in meinem Beispielcode konkret aussehen, damit an den Link noch als Parameter das value des select mit der Endung ".txt" angehängt wird?
Der Link soll dann z.B. bei der select-Auswahl "Auswahl B" so aussehen:
Code:
<a href="Tabelle.php?Quelle=A02.txt" target="Linkfeld">
Hier der geänderte Beispielcode:
Code:
<!DOCTYPE html>
<html lang="de">
<head>
  <meta charset="utf-8">
  <title>Test Linkauswahl</title>
</head>
<body style="height: 100%;">
<table style="text-align: left; width: 100%; height: 80px;" border="0" cellpadding="0" cellspacing="0">
  <tbody>
    <tr>
      <td style="vertical-align: top;">
            <h1>Test für Linkauswahl<br></h1>
        </td>
        <td> 
            <select size='1' id='auswahl' name='Auswahl'>
                <option value='A01' selected='selected'>Auswahl A</option>
                <option value='A02'>Auswahl B</option>
                <option value='A03'>Auswahl C</option>
            </select>
        </td>     
        <td style="vertical-align: middle; text-align: center; width: 125px;"><a href="Tabelle.php" target="Linkfeld"><img style="border: 0px solid ; width: 75px; height: 75px;" alt="Link zu google" src="link.gif"></a><br>
        </td>
    </tr>
  </tbody>
</table>
<iframe name="Linkfeld" body="" bgcolor="#E0E0E0" src="seite.html" height="600" width="100%"></iframe>
</body>
</html>
 
Werbung:
Also ein iFrame auf der selben Seite, wo das Select liegt? Das dürfte kein Problem sein und für den Anfang auch das einfachste. Es ginge auch ohne iFrame, dann müsste man
- entweder die Daten mit Ajax holen
- oder die Seite neu laden
der iFrame ist ja schon vorhanden, ich möchte diesen jetzt nur statt mit meinen HTML-Seiten mit einem datatable befüllen. Der Inhalt (die Quelle) des datatables soll sich dabei aus der Auswahl des select ergeben.

Sorry, ich bin nicht der beste Erklärer...
 
Ich denke mal das @Sempervivum dir hier weiter helfen tut, weil er dir im anderen Thema da auch schon weiter geholfen hat und genau weiß was du da genau vor hast.
Wenn ich jetzt nee Lösung poste und er auch kommst du nur noch durcheinander.

Ich bin auch gerade am überlegen ob iframes da der richtige weg ist.
Du willst ja nur eine selec Auswahl haben der dann den verschiedenen Inhalt anzeigt.
Wäre mit Iframe zwar auch kein problem , doch ich würde es ehr ohne machen.Aber das schrieb sempervivum ja auch schon
 
funktioniert nicht - aber ich vermute, dass es an meinem Beispielcode liegt.

Hier ist das Orginal mit Code, es geht um den Link, der sich bei "all-in-one" öffnet.
Hier soll der Datatable passen zur Auswahl des ersten selects (Einzel/Tandem/Mannschaft) angezeigt werden. Im Moment sind allerdings nur Daten für Einzel da, bei anderer Auswahl wird also ein leerer table erscheinen.
Code:
<!DOCTYPE html>
<html lang='de'><head>
<meta charset='utf-8'>
<title>sportskat.de</title>
</head>
<body style='height: 100%'>
<script>
document.addEventListener('DOMContentLoaded', async function () {
var open_button=document.getElementById('los').addEventListener('click',function(){
    let gruppen_link=document.getElementById('gruppe').value;
    let wertung_link=document.getElementById('wertung').value;
     let sort_link=document.getElementById('sort').value;
    let link=`S${gruppen_link}_${wertung_link}_${sort_link}`;
    let iframes= document.querySelectorAll('iframe');
        iframes.forEach(function(i){
        i.src=link;
   })
   });
 });
</script>
<table style='text-align: left; width: 100%; height: 80px;' border='0' cellpadding='0' cellspacing='0'>
<tbody><tr>
<td style='vertical-align: top;'>
<h1 style='font-family: Arial;'>Der große Skatclub in Testhausen</h1>
<h2 style='font-family: Arial;'>Mein großes Testturnier am 01.01.2020 in Überall</h2>
</td>
<td style='vertical-align: middle; text-align: center; width: 125px;'><a href='../Tabelle.php?Quelle=Demo/Einzel.txt' target='Tabelle'><img style='border: 0px solid ; width: 75px; height: 75px;' alt='all-in-one' src='https://www.sportskat.de/tabelle.gif'></a><br>
<div style='text-align: center; font-weight: bold;'><big style='font-family: Helvetica,Arial,sans-serif;'><big>all-in-one</big></big></div>
</td>
<td style='vertical-align: middle; text-align: center; width: 125px;'><a href='https://www.sportskat.de'><img style='border: 0px solid ; width: 75px; height: 75px;' alt='Startseite' src='https://www.sportskat.de/home.gif'></a><br>
<div style='text-align: center; font-weight: bold;'><big style='font-family: Helvetica,Arial,sans-serif;'><big>Startseite</big></big></div>
</td></tr></tbody></table>
<div id='form_abfrage'>
<select size='1' id='wertung' name='Wertung'>
<option value='Einzel' selected='selected'>Einzelwertung</option>
<option value='Tandem'>Tandemwertung</option>
<option value='Mannschaft'>Mannschaftswertung</option>
</select>&nbsp;&nbsp; &nbsp;
<select size='1' id='gruppe' name='Gruppe'>
<option value='01' selected='selected'>Serie 1</option>
<option value='02'>Serie 2</option>
<option value='03'>Serie 3</option>
<option value='04'>Serie 4</option>
<option value='05'>Serie 5</option>
<option value='06'>Serie 6</option>
</select>&nbsp;&nbsp; &nbsp;
<select size='1' id='sort' name='Sort'>
<option value='Serie.html' selected='selected'>sortiert nach Serie</option>
<option value='Gesamt.html'>sortiert nach Gesamt</option>
<option value='Tische.html'>sortiert nach Tischen</option>
</select>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp; <input id='los' value='anzeigen' type='button'></div>
<br>
<iframe name='Tabelle' id='Tabelle' body bgcolor='#E0E0E0' src='start.html' height='1260px' width='100%'></iframe>
<center style='font-family: Arial; margin-top: 0px; height: 25px;'>&copy; 2020&nbsp;&nbsp;www.skat-turniermanager.de</a> </center>
</body>
</html>

PS.: Basti: ich weiß, dass das kein perfektes HTML ist - ich muss das so gut machen wie ich es kann...
 
Werbung:
Wie ist jetzt der Link sportskat.de zu verstehen, ist das deine eigene Seite, oder eine andere, die Du zum Vergleich angegeben hast? In den Seiten, die dort in den iFrame geladen werden, sehe ich nämlich nichts von Datatables. Sind die Tabellen dort mit PHP generiert?
ja das ist meine Seite auf der das alles eingesetzt werden soll.
Den Datatable, den ich hier noch zusätzlich zu den "normalen" statischen HTML-Tabellen nutzen möchte findest du unter dem Link all-in-one rechts oben.
Einen weiterer datatable (eigentlich der wichtigste) findet sich auf der Startseite
 
OK, und diese beiden Datatables sollen in Zukunft ebenfalls über das Selekt geöffnet werden, zusätzlich zu den statischen?
ja ich weiß, bin ein extrem schlechter Erklärer.

Die Seite ist so wie ich es haben wolllte.
Ich möchte nur zusätzlich einen Datatable im iframe anzeigen, dess Inhalt je nach dem gewählten ersten select sein soll. Der Link zum Datatable soll über den auf dem all-in-one-Button liegen. Im Moment liegt da ein Link zu diesem Datatable mit der Quelle "Einzel.txt" darauf. Diese Datenquelle soll sich je nach der Auswahl des ersten select sändern. Wenn ich im select "Tandemwertung" auswähle soll beim Klick auf all-in-one der Datatable mit der Quelle "Tandem.txt" im iframe angezeigt werden.
 
Jetzt kommen wir der Sache schon näher. Beim Klick auf den all-in-one-Button soll jeweils eine Datatables-Seite im iFrame geöffent werden und welche soll durch das Select gesteuert werden. Offen ist für mich jetzt nur noch die Frage, ob diese Seite im selben iFrame geöffnet werden soll, d. h. es gibt nur einen, oder in einem zusätzlichen?
alles nur in dem einen iframe - ich möchte also alles so lassen, der Datatable kommt nur zusätzlich als Option dazu
 
Werbung:
genial, funktionierte auf Anhieb

ich habe mittlerweile auch die Erstellung der Quelldatei in meinem Windows-Programm fertig.
Jetzt muss ich nur noch in meinem Windows-Programm diese Seite "nachbauen" und per FTP hochladen.
Da die Disziplinen und Anzahl der Serien für jede Veranstaltung verschieden sind benötige ich auch für jede Veranstaltung eine individuelle index-Datei, den datatable kann ich mit wechselnder Bestückung universell für alles nutzen :smile: Das hätte ich niemals hinbekommen, nochmals herzlichen Dank.
 
Zurück
Oben