Dynamische Listboxes

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/dynamische_listboxes_32836/page_1 - zur Vollversion wechseln!


alexsb schrieb am 29.04.2002 um 09:51

Hi
Ich mache gerade eine PHP Seite auf der man häufig mit listboxws auswählen muss.
Beispiel: Listbox 1 hat die Einträge a und b
Wenn ich a auswähle soll Listbox 2 auftauchen und optionen c und d zur Verfügung stellen
Wenn ich a auswähle soll Listbox 2 auftauchen und optionen e und f zur Verfügung stellen.

Das hab ich schon und funktioniert auch wunderbar.

Ich bräuchte allerdings einen Auto Update Event, also einen der mir den Submit Button ersetzt, denn bisher muß ich nach der Auswahl immer einen Submit Button drücken!

Gibt es da eine Möglichkeit?


schrieb am 29.04.2002 um 10:02

yep. read this: http://selfhtml.teamone.de/javascri...er.htm#onselect

edit:

ups, sorry, verschaut - eher wird bei dir das http://selfhtml.teamone.de/javascri...er.htm#onchange "onchange" element passen. damit kannst du eine javascriptfunktion aufrufen, die entweder die seite mit einem parameter reloadet oder auch ganz andere sachen macht :)


alexsb schrieb am 29.04.2002 um 12:27

Danke einmal, das haut ganz gut hin, aber da ich ein JavaScript newbie bin weiß ich jetzt nicht wie ich eine Funktion schreibe die eine Seite aufruft und wie ich parameter übergebe!
Kann mir das jemand kurz zeigen?


bBU.CyTrobIc schrieb am 29.04.2002 um 14:32

kannst es auch mit nem <meta refresh> machen,
allerdings musst du dann die variablen speichern,
weil er sonst immer wieder den default wert nimmt.
bzw. du musst den ausgewählten wert als default
setzen und mit $PHP_SELF refreshen.

mfg cy


Vir@s schrieb am 29.04.2002 um 14:42

Zitat von alexsb
Danke einmal, das haut ganz gut hin, aber da ich ein JavaScript newbie bin weiß ich jetzt nicht wie ich eine Funktion schreibe die eine Seite aufruft und wie ich parameter übergebe!
Kann mir das jemand kurz zeigen?

also z.B.:

Code:
function refresh(url) {
	url = url + "parameter";
	window.location = url;
}

Natürlich musst du "parameter" noch durch die passenden Parameter ersetzten (also was du dem Php script übergeben willst.

Mfg, Vir@s


alexsb schrieb am 29.04.2002 um 16:14

Also irgendwie shäm ich mich ja zu fragen:confused: aber wie übergieb ich die Variablen genau? in PHP Form, oder a la html, sorry, hab wirklich null plan von JavaScript!


Vir@s schrieb am 29.04.2002 um 20:57

Kein Problem :)

Code:
<HTML>
<HEAD>
<SCRIPT langauge='JavaScript'>

function refresh(url) {
	url = url + "?" + document.aform.something.value;
	window.location = url;
}
</SCRIPT>

</HEAD>
<BODY>

<FORM name='aform'>
<SELECT name='something' size='6' onChange="refresh('http://www.yourpage.com/script.php')">
<OPTION value='test'>Test 1</OPTION>
<OPTION value='hello'>Hello</OPTION>
</SELECT>
<BR>
<INPUT type='submit' onClick="refresh('http://www.yourpage.com/script.php')">
</FORM>

</BODY>
</HTML>

Des Ding macht nix anderes, als das es bei einer Veränderung des select statements die function refresh aufruft. Die function stellt fest welcher eintrag gerade selectiert ist und refresht dann das browser fenster :)

Hf, Vir@s


alexsb schrieb am 29.04.2002 um 22:13

also das ist mir jetzt einigermaßen klar, außer das

url = url + "?" + document.aform.something.value;
window.location = url

Wenn ich jetzt den parameter new=1 übergeben möchte, wie mache ich das?:rolleyes:


Vir@s schrieb am 30.04.2002 um 00:44

also in url steckt die URL zum script / der Seite das/die du Aufrufen willst.

document.aform.something.value greift lediglich auf das gerade selektierte Element in der ListBox something in der form aform zu.

Wenn du eine Listbox hast, wo der Eintrag 1 vorkommt dann machst du das so:

url = url + "?new=" + document.aform.somthing.value;

Mit der Zeile baue ich einfach nur den query für den Browser bzw Server auf.

mit window.location = url; setzt du den Browser einfach nur auf die Adresse.

Hoffe jetzt is alle klar!

Mfg, Vir@s


alexsb schrieb am 30.04.2002 um 12:07

Jetzt ist alles klar! Danke für die Geduld!




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025