Dropdown Menü auslesen

docma

Erfahrenes Mitglied
Hey.

Als erstes ich habe leider keine ahnung von Javascript.
Ich bräuchte aber ein kleinen Code für meine HP... vielleicht kann mir jemand von euch weiter Helfen.

Ich habe ein DropdownMenü

Code:
<body>

<select name="Dropdown">
  <option value="wert_news">News</option>
  <option value="wert_angebot">Angebot</option>
  <option value="wert_nachfrage">Nachfrage</option>
</select>

</body>

Beim klicken z.B auf News wird unterhalb eine neue Datei geladen z.B.

Code:
swfobject.embedSWF("news.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf");

Nun müsste aber "news.swf" variabel sein. Könnt Ihr mir ein kleines Beispiel reinstellen wie das aussehen müsste mit Javascript? Vielen Danke
 
So in etwa

HTML:
<select name="Dropdown" id="Dropdown">
  <option value="wert_news">News</option>
  <option value="wert_angebot">Angebot</option>
  <option value="wert_nachfrage">Nachfrage</option>
</select>
<div id="myContent"></div>

Javascript:
document.getElementById('Dropdown').change = function() {
   swfobject.embedSWF(this.value + ".swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf");
};
 
Danke CPoly

Sieht schon mal sehr gut aus... mir ist noch nicht ganz klar wie ich den Dateinamen bei "data" einbauen kann. Die Function habe ich mal nach "narbe" geannt... aber ja habs noch noch nicht ganz raus...

Hier mal der Code
Code:
<head>
		<title>SWFObject 2 static publishing example page</title>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
		<script type="text/javascript" src="swfobject.js"></script>
		<script type="text/javascript">
		swfobject.registerObject("myId", "9.0.0", "expressInstall.swf");
		</script>
        
        
 <script type="text/javascript">
		document.getElementById('Dropdown').change = function(narbe) {
   		(this.value + ".swf");
																											};
		</script>
        
        
        
        
        
	</head>
	<body>
		<div>
        
        <select name="Dropdown" id="Dropdown">
  		<option value="wert_news">News</option>
  		<option value="wert_angebot">Angebot</option>
  		<option value="wert_nachfrage">Nachfrage</option>
		</select>

        
        
        	
			<object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="300" height="120">
				<param name="movie" value="id = narbe" />
        		<!--[if !IE]>-->
				<object type="application/x-shockwave-flash" data="test.swf" width="300" height="120">
				<!--<![endif]-->
				<div>
					<h1>Alternative content</h1>
					<p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash 		player" /></a></p>
				</div>
				<!--[if !IE]>-->
				</object>
				<!--<![endif]-->
			</object>
		</div>
        
        
	</body>
 
Ich weiß nicht genau was du meinst.

Ich kann dir nur sagen, dass das hier kein gültiges JavaScript ist

Javascript:
 <script type="text/javascript">
    document.getElementById('Dropdown').change = function(narbe) {
    (this.value + ".swf");
</script>
 
Ok sry...
also:

im Head greift Javascript auf den Wert "Dropdown" und macht daruas die "function" also (Wert von Dropdown + .swf

HTML:
document.getElementById('Dropdown').change = function() {
   (this.value + ".swf");
};

unten im Body habe ich die Dropdownliste im Html... ich nehme an der Code oben greif ja auf die Werte von dieser liste zu und macht daraus "wert_news.swf"

HTML:
<select name="Dropdown" id="Dropdown">
        <option value="wert_news">News</option>
        <option value="wert_angebot">Angebot</option>
        <option value="wert_nachfrage">Nachfrage</option>
        </select>

Und ganz unten kommt nochmals der Javascript Code der die Datei "wert_news.swf" abspielen soll. Hier müsste "Dateiname.swf" mit "Werte_news.swf" ersetzt werden.

HTML:
<param name="movie" value="Dateiname.swf" />

Wie kireg ich den jetzt den neuen Dateinamen in "value="Dateiname.swf"
Tut mir echt leid, habe keien Ahnung von Javascript, für meien HP brauche ich nur diesen Codeschnipsel und möchte deswegen nicht eine ganze Programmiersprache lernen. Danke für deine Hilfe.
 
Ok. Mehrere Probleme:

1. Wenn du "document.getElementById('Dropdown')" aufrufst, existiert das Element noch gar nicht. Denn das JavaScript wird sofort ausgeführt wenn der Parser an der Stelle ist. Aber dort wurde das Dropdown noch gar nicht geparst. -> Entweder das Skript ans Ende der Seite oder z.B. in eine window.onload Funktion

2. Es wird dir nichts bringen den Wert von "<param name="movie" value="Dateiname.swf" />" zu ändern. Denn der Wert wurde von dem Flash Objekt bereits eingelesen. Du musst also mittels JavaScript den gesamten HTML Teil:

HTML:
<object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="300" height="120">
                <param name="movie" value="id = narbe" />
                <!--[if !IE]>-->
                <object type="application/x-shockwave-flash" data="test.swf" width="300" height="120">
                <!--<![endif]-->
                <div>
                    <h1>Alternative content</h1>
                    <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Get Adobe Flash        player" /></a></p>
                </div>
                <!--[if !IE]>-->
                </object>
                <!--<![endif]-->
            </object>

neu generieren.

Es sei denn, du benutzt swfobject, was aber jetzt scheinbar doch wieder nicht der Fall ist.
 
mm... ok, probier ich noch aus... doch swfobejct ist noch drin

Ich danke ich habe jetzt eine lösung gefunden... die zumindest mit Bildern funktioniert... allerdings funktioniert nicht ganz wenn ich das SWF einbetten möchte... wie muss das aussehen bezüglich ("")... usw.

hier der Code
HTML:
if (oValue == "news") {$.fancybox(["test.jpg"], {onClosed		: function() {document.getElementById("selectMenu").value = "first";lastValue = "first";},"type"	: "image",	'overlayShow'	: false,

so funktionierts leider nicht...
HTML:
if (oValue == "news") {$.fancybox(["swfobject.embedSWF("test1.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf");"], {onClosed		: function() {document.getElementById("selectMenu").value = "first";lastValue = "first";},"type"	: "image",	'overlayShow'	: false,

Ok habe den Type vergessen... das Flash wird geladen allerdings wird das Bild nicht geladen... Ideen? PS läuft jetzt über iquery fancybox

HTML:
	if (oValue == "news") {$.fancybox([swfobject.embedSWF("test1.swf", "300", "120", "9.0.0", "expressInstall.swf")], {onClosed		: function() {document.getElementById("selectMenu").value = "first";lastValue = "first";},"type"	: "swf",	'overlayShow'	: false,
				'titleShow'		: false,
				'padding'		: 0,
				'transitionIn'	: 'fade',
				'transitionOut'	: 'fade',
				'changeFade'	: 200,
				'scrolling'		: 'no',
				'cyclic'		: false,
				'opacity'		: true,
				'margin'		: 0,
				'autoScale'		: false
 
Zuletzt bearbeitet von einem Moderator:
Zurück