Asp.net
如何使用 javascript 訪問 runat=‘server’ ASP 元素?
似乎每個人都在這樣做(在程式碼文章等中)……但我不知道如何。:(
每當我嘗試使用 JavaScript 操作一個 asp 元素時,我都會收到一個
"element is null"或其他"document is undefined"錯誤…..JavaScript 通常可以正常工作,…但只有當我添加
runat="server"屬性時,該元素才會對我的 JavaScript 看起來不可見。任何建議,將不勝感激。
謝謝,安德魯
可能發生的情況是您的元素/控制項位於一個或多個 ASP.NET 控制項中,這些控制項充當命名容器(母版頁、ITemplate、嚮導等),這導致其 ID 發生更改。
您可以在瀏覽器中使用“查看原始碼”來確認呈現的 HTML 中發生的情況。
如果您的 JavaScript 在 ASPX 頁面中,臨時解決此問題的最簡單方法是使用元素的 ClientID 屬性。例如,如果您想通過 JS 引用一個名為 TextBox1 的控制項:
var textbox = document.getElementById('<%= TextBox1.ClientID %>');