setting innerHTML: Warum wird das DOM nicht aktualisiert?

8

Ich frage mich, warum ich document.getElementById("my_div").innerHTML nicht erhalten kann, um das DOM zu aktualisieren, wenn ich die Variable neu zuweisen. Zum Beispiel:

%Vor%

Im Protokoll kann ich sehen, dass die Variable neu zugewiesen wird, wenn ich klicke, aber das innerHTML von my_div bleibt unverändert. Warum ist das?

    
nipponese 19.11.2011, 18:29
quelle

4 Antworten

10

innerHTML ergibt eine Zeichenfolge. Ich bin mir nicht sicher, warum Sie etwas anderes erwarten würden. Bedenken Sie Folgendes:

%Vor%

Die erneute Zuweisung von b ändert nicht a .

Bearbeitet, um hinzuzufügen: Falls es oben nicht klar ist, wenn Sie innerHTML ändern möchten, können Sie es direkt zuweisen:

%Vor%

Sie benötigen keine Zwischenvariable und können sie auch nicht verwenden.

    
ruakh 19.11.2011, 18:33
quelle
4
%Vor%

speichert den Wert von innerHTML, innerHTML enthält einen Zeichenfolgenwert, kein Objekt. Also kein Bezug auf das Elem ist möglich. Sie müssen das Objekt direkt speichern, um seine Eigenschaften zu ändern.

%Vor%     
no_name_here 19.11.2011 18:36
quelle
1

Sie müssen das Element nach der Einstellung von innerHTML / outerHTML neu zuweisen:

%Vor%     
kofifus 26.08.2016 03:58
quelle
0

sollten Sie den innerHTML-Wert wie

festlegen %Vor%     
david 19.11.2011 18:31
quelle

Tags und Links