Anzeige:
Ergebnis 1 bis 3 von 3

Thema: per innerHTML input-feld hinzufügen

  1. #1
    Registrierter Benutzer
    Registriert seit
    30.03.2008
    Beiträge
    6

    per innerHTML input-feld hinzufügen

    Abend,

    heruntergebrochen sieht mein Code so aus --v

    Code:
    <html>
    <head>
    <script>
    function asdf()
    {
    	document.getElementById("content").innerHTML += '<input type="text">';
    }
    </script>
    </head>
    <body>
    <div id="content">
    	<input type="text">
    	<input type="button" onclick="asdf();">
    </div>
    </body>
    </html>
    Ich habe ein Formular, in das ich per Knopfdruck ein input-Element hinzufügen möchte. Das funktioniert ja auch soweit. Nur leider wird der Inhalt des von Anfang an bestehenden Input-feldes beim Ausführen der Funktion gelöscht.

    Ihr wisst nicht zufällig woran das liegt/wie ich das umgehen kann?

  2. #2
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    Zitat Zitat von Sunny89 Beitrag anzeigen
    Abend,

    heruntergebrochen sieht mein Code so aus --v

    Code:
    <html>
    <head>
    <script>
    function asdf()
    {
    	document.getElementById("content").innerHTML += '<input type="text">';
    }
    </script>
    </head>
    <body>
    <div id="content">
    	<input type="text">
    	<input type="button" onclick="asdf();">
    </div>
    </body>
    </html>
    Ich habe ein Formular, in das ich per Knopfdruck ein input-Element hinzufügen möchte. Das funktioniert ja auch soweit. Nur leider wird der Inhalt des von Anfang an bestehenden Input-feldes beim Ausführen der Funktion gelöscht.

    Ihr wisst nicht zufällig woran das liegt/wie ich das umgehen kann?
    das liegt daran, dass die elemente gelöscht und dann neu angelegt werden.
    du kannst dir den inhalt der ersten input box zuvor merken und den wert dann wieder setzen. oder alternativ und das ist sauberer ein input Element erzeugen und dann in den DOM einbauen

  3. #3
    Registrierter Benutzer
    Registriert seit
    30.03.2008
    Beiträge
    6
    Sooo.. erstmal Danke für deine Antwort. Da jetzt die Klausurphase rum ist, konnte ich mich auch mal wieder ein wenig mit dem Thema beschäftigen. Hab ne ganze Weile suchen müssen (wenn man in google "dom" eingibt, bekommt man ganz viele Reiseführer rund um den Kölner Dom ), bis ich deinen Denkanstoß realisieren konnte.

    Dieses Beispiel hier hat mir weitergeholfen

    Code:
    <html>
    <head>
    <title>||Working with elements||</title>
    </head>
    
    <script type="text/javascript">
    var my_div = null;
    var newDiv = null;
    
    function addElement()
    {
      // create a new div element
      // and give it some content
      newDiv = document.createElement("div");
      newDiv.innerHTML = "<h1>Hi there and greetings!</h1>";
    
      // add the newly created element and it's content into the DOM
      my_div = document.getElementById("org_div1");
      document.body.insertBefore(newDiv, my_div);
    }
    
    </script>
    
    <body onload="addElement()">
    <div id='org_div1'> The text above has been created dynamically.</div>
    </body>
    </html>
    Also, frohe Weihnachten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •