Philipp Teltenkötter: mein erster versuch mit javascript..

hi,

ich möchte eine radiobuttongroup über die entschieden wird, welche datei - als zieldokument - im actionevent steht.

Dafür möchte ich eine funktion in mein onChange() event packen, und über das return die action setztenn.

nur weiß ich nich was ich da verwenden muss, return oder dokumentwrite oder sonstwas.

vielen dank

---- code ----

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/JavaScript">
<!--
function setpage(x) {
  var x,y;
  if(x=1) y="page1";
  if(x=2) y="page2";
  if(x=3) y="page3";

return x;
}
-->
</script>
</head>
<body>
<form action="setpage()" method="post">
  visit 1
  <input name="radiobutton" type="radio" value="radiobutton" onchange="setpage(1)" />
  visit2
  <input name="radiobutton" type="radio" value="radiobutton" onchange="setpage(2)" />
  visit3
  <input name="radiobutton" type="radio" value="radiobutton" onchange="setpage(2)" />
 </form>
</body>
</html>

  1. hi,

    Dafür möchte ich eine funktion in mein onChange() event packen, und über das return die action setztenn.

    nur weiß ich nich was ich da verwenden muss, return oder dokumentwrite oder sonstwas.

    Wozu überhaupt return? Setze doch action gleich aus der Funktion heraus.

    function setpage(x) {
      var theForm = document.forms[0];
      if(x=1) theForm.action = "page1";
      if(x=2) theForm.action = "page2";
      if(x=3) theForm.action = "page3";
    }

    <form action="setpage()" method="post">

    An dieser Stelle ergibt setpage() keinen Sinn - weg damit.

    Liesse sich natürlich noch optimieren, sollte für den Anfang aber reichen.

    Bedenke aber, was passiert, wenn Javascript nicht zur Verfügung steht.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. ja das weiß ich. Angenommen ich lasse das setpage() weg,

      wie kreig ich dann die korrekte referenz in mein action attribut rein?

      mit name="form1" und in der funktion dann

      if -> form1.action = "seite1.php"
      ???

      1. Lieber Philipp,

        if -> form1.action = "seite1.php"

        wenn Du das schon serverseitig auswerten kannst, warum wertest Du dann die Radio-Buttons nicht auch serverseitig aus, anstatt Javascript für den User zwingend vorauszusetzen? Je nach dem abgeschickten Wert ließe sich dann mit dem Script die jeweilige Bearbeitung aufrufen... Und das klappt für jeden User (auch für die, die Javascript (warum auch immer) nicht haben)!

        Liebe Grüße aus Ellwangen,

        Felix Riesterer.