Sam: Variablen

Moin!

Ich hab mal ne frage über JavaScript:
Unten ist ein vereinfachtes Beispiel mit dem ich meine frage verdeutlichen will.
Ich möchte, dass in der alert-Box "Ich wohne in einem Haus" bzw. "Ich wohne in einer Wohnung" steht. (und nicht "variable_haus" bzw. "variable_wohnung")

"variable_"+wert soll ein variablen name sein. wie kann ich das so machen, dass es funktioniert?

Das Beispiel:

<html>
<head>
<title>Test</title>
<script language="JavaScript">
<!--
var variable_haus="Ich wohne in einem Haus.";
var variable_wohnung="Ich wohne in einer Wohnung";
function dialog (wert) {
 alert("variable_"+wert);
}
//-->
</script>
</head>
<body>
<a href="#" onClick="dialog('haus')">Haus</a><br>
<a href="#" onClick="dialog('wohnung')">Wohnung</a>
</body>
</html>

Danke schon mal im Vorraus!

  1. Hallo,

    [...]
    Ich möchte, dass in der alert-Box "Ich wohne in einem Haus" bzw. "Ich wohne in einer Wohnung" steht. (und nicht "variable_haus" bzw. "variable_wohnung")

    Das geht am einfachsten mit eval():

    statt alert("variable_"+wert);
    schreibst du:

    eval("alert(variable_" + wert + ");");

    siehe: </selfhtml/javascript/objekte/unabhaengig.htm#eval>

    Robert

    1. Hallo,

      Schöner, als eval() zu verwenden wäre:

      <html>
      <head>
      <title>Test</title>
      <script language="JavaScript">
      <!--
      var variable = new Array();
      var variable["haus"]="Ich wohne in einem Haus.";
      var variable["wohnung"]="Ich wohne in einer Wohnung";

      function dialog (wert) {
       alert(variable[wert]);
      }
      //-->
      </script>
      </head>
      <body>
      <a href="#" onClick="dialog('haus')">Haus</a><br>
      <a href="#" onClick="dialog('wohnung')">Wohnung</a>
      </body>
      </html>

      Grüße

      Daniel