macservo: input-feld über Javascript "disabled" machen

Hallo liebe Leute,

unten hängt ein Test-HTML dran.
Der Button "KLICK" ändert den Wert des input-Felds. Die Buttons "aktivieren" und "deaktivieren" ändern das disabled-Property des Feldes. So weit so gut.
Aber nachdem das Feld aktiviert und wieder deaktiviert wurde, kann der Wert nicht mehr über JavaScript geändert werden? Im Firefox funktioniert es zuverlässig nicht, in Safari klappt es manchmal doch.
Gibt es einen besseren Weg, das gewünschte zu erreichen?

Vielen Dank.
macServo

<html>
 <head>
  <script type="text/javascript">
   function aendern() {
    document.getElementById("feld").setAttribute("value", "geklickt");
   }
   function aktivieren() {
    document.getElementById("feld").disabled=false;
   }
   function deaktivieren() {
    document.getElementById("feld").disabled=true;
   }
  </script>
 </head>
 <body>
  <input id="feld" type="text" value= "nicht geklickt" disabled>
  <br>
  <button onclick="aendern()">KLICK</button>
  <br>
  <button onclick="aktivieren()">aktivieren</button>
  <button onclick="deaktivieren()">deaktivieren</button>
 </body>
</html>

  1. Hallo,

    Aber nachdem das Feld aktiviert und wieder deaktiviert wurde, kann der Wert nicht mehr über JavaScript geändert werden?

    Doch. Sollte einwandfrei funktionieren. Mit

    document.getElementById("feld").setAttribute("value", "geklickt");

    änderst du immer nur zu "geklickt", das ist klar. Wieder zu "nicht geklickt" ändern geht mit diesem Code natürlich nicht, falls es das ist, was dich irritiert.

    Gruß, Don P

    1. Doch. Sollte einwandfrei funktionieren. Mit

      document.getElementById("feld").setAttribute("value", "geklickt");
      änderst du immer nur zu "geklickt", das ist klar. Wieder zu "nicht geklickt" ändern geht mit diesem Code natürlich nicht, falls es das ist, was dich irritiert.

      Danke für die Antwort.
      Das ist klar.
      Was ich meinte war,
      1. ich setze den wert per Button auf "geklickt"
      2. ich "aktiviere" das Feld
      3. ich ändere den Wert von Hand auf "irgendwas"
      4. ich "deaktiviere" das Feld
      --> Jetzt sollte ich doch mit dem Button wieder zu "geklickt" zurückkehren können, oder? Genau das funktioniert aber in keinem meiner Browser (Safari,FF,iCab)

      1. Hallo,

        Ok, setAttribute() ist ein bisschen heikel. Notiere doch einfach
            document.getElementById("feld").value = "geklickt";

        Das sollte dann aber klappen.

        Gruß, Don P

        1. Notiere doch einfach document.getElementById("feld").value = "geklickt";

          Das sollte dann aber klappen.

          Gruß, Don P

          Vielen Dank, Don P.

          Damit funktioniert es sehr viel besser.
          Dankeschön,

          macServo