Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo Leute,

leider weis ich nicht so genau, wie ich beschreiben soll, was ich haben möchte. Ich versuche es einfach mal:

Ich möchte das wenn in einem DropDown-Feld etwas ausgewählt wird, darunter nach dieser Auswahl etwas erstellt wird. Vom Ablauf her müsste also, immer wenn in dem DropDown-Feld etwas ausgewählt wird, eine Funktion aufgerufen werden, die die Seite je nach Auswahl erweitert.

Ich hoffe es kam halbwegs rüber was ich haben möchte, hat jemand eine Idee mit einem Beispiel dazu ?

Gruß Patrick

Geschrieben

musste wohl dann mit formular und onChange='submit();' arbeiten <- server seitig und funzt immer

oder per JavaScript, dies kann aber vom anwender deaktiviert werden. <- dabei muss aber die seite nicht jedes mal neu geladen werden!

Geschrieben

so ungefähr!

ungetestet!!


<form action='test.php' method='post'>
<select name='hardware' onChange='submit'>
<option value='Mboard'>Motherboard</option>
<option value='Graka'>Graffikkarte</option>
.
.
.
</select>

<?php
if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Mboard") {
?>

<select name='MBoard'>
<option >Asus</option>
<option >MSI</option>
.
.
.
</select>

<?php
} else if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Graka") {
?>

<select name='MBoard'>
<option >ATI</option>
<option >NVIDIA</option>
.
.
.
</select>

<?php
}
?>

</form>
[/PHP]

dabei wird wie gesagt, die site immer wieder neu geladen.

wenn du dir ne JavaScript Variante überlegst, dann würde das ohne neuladen gehen, dann halt mit der einschränkung, dass der "benutzer" dann im Browser JavaScripting aktiviert hat!

Was allerdings meiner Meinung nach zu ca. 95% zutrifft, da es

1. Standard aktiviert ist

2. Viele gar nicht wissen wie sie es ausschalten können!

Geschrieben

wenn du ein formular aussen herum hast, dann sollte das onChange='submit ();' den Submit des Formulars auslösen. Somit solltest du mit dem ausgewählten wertes des Selects arbeiten können.

vorraussetzung dafür, ist auch das das file in das du den source reinmachst test.php heisst! Weil oben im form action='test.php' steht!

[EDIT]

kannst ja ma posten wie der Inhalt deiner Datei aktuell aussieht!

die Punkte ". . ." Müssen natürlich auch aus der Source raus, sollte ja nur darstellen das du unendlich viele Options in deinen Select einfügen kannst.

[/EDIT]

Geschrieben

Noch eine Frage habe ich dazu:

Wenn das SUBMIT ausgeführt wird, wird das form neu geladen, leider wird dann auch die Auswahlbox auf den Anfangswert gesetzt, gibt es heir eine Möglichkeit das er sich die Auswahl merkt oder muss ich die manuell wieder darstellen ?

Gruß Patrick

Geschrieben


<form action='test.php' method='post'>
<select name='hardware' onChange='submit'>
<option value='Mboard'
<?php
if ( !empty( $_POST["hardware"]) && $_POST["hardware"] == "Mboard") echo " selected=\"selected\"";
?>
>Motherboard</option>
<option value='Graka'
<?php
if ( !empty( $_POST["hardware"]) && $_POST["hardware"] == "Graka") echo " selected=\"selected\"";
?>
>Graffikkarte</option>
.
.
.
</select>

<?php
if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Mboard") {
?>

<select name='MBoard'>
<option >Asus</option>
<option >MSI</option>
.
.
.
</select>

<?php
} else if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Graka") {
?>

<select name='MBoard'>
<option >ATI</option>
<option >NVIDIA</option>
.
.
.
</select>

<?php
}
?>

</form>
[/PHP]

Wenn du mehrere Select felder hast machste das dann am besten mit ner funktion:

[PHP]

function selectOption( $sOptionName, $sOptionToSelect) {
if ( $sOptionName == $sOptionToSelect) echo " selected=\"selected\"";
}

<form action='test.php' method='post'>
<select name='hardware' onChange='submit'>
<option value='Mboard'<?php selectOption( "Mboard", $_POST["hardware"]); ?>>Motherboard</option>
<option value='Graka'<?php selectOption( "Graka", $_POST["hardware"]); ?>>Graffikkarte</option>
.
.
.
</select>

<?php
if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Mboard") {
?>

<select name='MBoard'>
<option >Asus</option>
<option >MSI</option>
.
.
.
</select>

<?php
} else if ( !empty($_POST['hardware']) && $_POST['hardware'] == "Graka") {
?>

<select name='MBoard'>
<option >ATI</option>
<option >NVIDIA</option>
.
.
.
</select>

<?php
}
?>

</form>

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...