代码之家  ›  专栏  ›  技术社区  ›  Jonathan Sternberg

ASP.NET名称是否一致?

  •  3
  • Jonathan Sternberg  · 技术社区  · 14 年前

    当您有这样的ASP控件时:

    <asp:TreeView ID="TreeItems" runat="server"></asp:TreeView>
    

    它生成的html会损坏这些名称。如果我想直接访问生成的项目的ID,我可以尝试找出它将名称损坏为什么,并查找该ID。

    4 回复  |  直到 14 年前
        1
  •  5
  •   µBio    14 年前

    它不能保证一致性(这是一个实现细节)

    改为使用ClientID(它将为您提供生成的id)。

        3
  •  2
  •   Greg    14 年前

    <script type="text/javascript">
        //initialize client names of server side controls.
        var TreeItemsId = "<%= TreeItems.ClientID  %>";    
    </script>
    

    当它呈现给客户端时,它会像这样:

    <script type="text/javascript">
        //initialize client names of server side controls.
        var TreeItemsId = "ctl00_TreeItems";    
    </script>
    
        4
  •  0
  •   Guffa    14 年前

    不,不能保证是一致的。

    使用 ClientID 属性以查找控件的生成id。