Es sieht so aus, als ob jeder das macht (in Codeposts etc.) ... aber ich weiß nicht wie: (
Immer, wenn ich versuche, ein ASP-Element mit Javascript zu manipulieren, bekomme ich ein "Element ist Null" oder "Dokument ist undefiniert" usw. Fehler .....
Javascript funktioniert in der Regel gut, ... aber nur wenn ich das Attribut runat="server" hinzufüge, scheint das Element für mein Javascript unsichtbar zu sein.
irgendwelche Vorschläge würden geschätzt werden
Danke, Andrew
Wahrscheinlich ist Ihr Element / Steuerelement in einem oder mehreren ASP.NET-Steuerelementen enthalten, die als Benennungscontainer fungieren (Masterseite, ITemplate, Wizard usw.), wodurch sich seine ID ändert.
Sie können "Quelle anzeigen" in Ihrem Browser verwenden, um zu bestätigen, was im gerenderten HTML passiert.
Wenn sich Ihr JavaScript auf der ASPX-Seite befindet, können Sie dies am einfachsten unter Verwenden Sie die ClientID-Eigenschaft des Elements . Wenn Sie beispielsweise ein Steuerelement namens TextBox1 hatten, das Sie über JS referenzieren wollten:
%Vor% Wenn Sie ein Element runat="server"
setzen, ändert sich die clientseitige ID dieses Elements basierend auf den darin enthaltenen ASP.NET-Namenscontainern. Wenn Sie also document.getElementById
verwenden, um das Element zu bearbeiten, müssen Sie ihm die von .NET generierte neue ID übergeben. Sehen Sie sich die ClientId -Eigenschaft an um diese generierte ID zu bekommen ... kannst du sie in deinem Javascript wie folgt verwenden:
Tags und Links javascript asp.net runatserver