Bei Verwendung von ASP.NET-Steuerelementen, z. B.
%Vor%Wenn wir den Text der Kopfzeile ändern wollen, können wir es wahrscheinlich mit den zwei Eigenschaften InnerHTML und InnerText machen. Ich möchte wissen, was der grundlegende Unterschied zwischen den zwei Eigenschaften ist?
InnerHtml lässt Sie HTML-Code direkt eingeben, InnerText formatiert alles, was Sie dort eingeben, damit es als einfacher Text verwendet werden kann.
Zum Beispiel, wenn Sie dies in beiden Eigenschaften eingeben: Hello <b>world</b>
Das würden Sie mit InnerHTML bekommen:
Hallo Welt
Das ist genau der gleiche HTML-Code, den Sie eingegeben haben.
Wenn Sie InnerText verwenden, erhalten Sie stattdessen Folgendes:
Hello <b>world</b>
Und das resultierende HTML wäre Hello <b>world</b>
Gehen Sie im Zweifelsfall zur Quelle (oder dekompilieren Sie sie):
In HtmlContainerControl
:
Beide Eigenschaften verwenden letztlich InnerHtml
, aber die Einstellung InnerText
HTML codiert den Wert so, dass er im Browser buchstäblich angezeigt und nicht als Markup interpretiert wird.
Beachten Sie, dass die Zuweisung zu InnerHtml
den Wert nicht codiert und daher alle benutzergesteuerten Inhalte vor der Zuweisung bereinigt werden sollten.
Dies betont auch, wie wichtig es ist, den Ansichtszustand zu beachten (beachte die letzte Zeile von InnerHtml
's Setter; alles endet im Ansichtszustand, ob du es brauchst oder nicht).
Tags und Links javascript html c# asp.net