当前位置: 首页 > 面试题库 >

ID,UniqueID,ClientID,UniqueClientID,StaticClientID?

通沛
2023-03-14
问题内容

好的,我对动态创建的控件的ID感到很困惑。

Public Class TestClass
    Inherits Panel
    Implements INamingContainer

    Function TestClassInit() Handles Me.Init

        Dim pnlMainPanel As New Panel
        Me.Controls.Add(pnlMainPanel)

        Dim pnlTest1 As New Panel
        pnlMainPanel.Controls.Add(pnlTest1)

        pnlTest1.ClientIDMode = UI.ClientIDMode.Inherit ' DEFAULT
        'pnlTest1.ID = "ctl01"
        'pnlTest1.UniqueID = "ctl00$MainPanel$ctl01"
        'pnlTest1.ClientID = "MainPanel_ctl01"
        'pnlTest1.UniqueClientID = "ctl00_MainPanel_ctl01"
        'pnlTest1.StaticClientID = ""

        pnlTest1.ClientIDMode = UI.ClientIDMode.Predictable
        'pnlTest1.ClientID = "MainPanel_ctl01" (no change)

        pnlTest1.ClientIDMode = UI.ClientIDMode.AutoID
        'pnlTest1.ClientID = "ctl00_MainPanel_ctl01"

        pnlTest1.ClientIDMode = UI.ClientIDMode.Static
        'pnlTest1.ClientID = ""

    End Function
End Class

为什么5个不同的ID?

什么时候应该使用不同的ID模式?

(我阅读了MSDN文档,但像往常一样,它们并不是特别说明。)

如果我不在乎ID是 什么 ,而只想添加一个控件并将其ID提供给动态添加的AJAX扩展器,则应该使用哪种模式/ ID组合?


问题答案:
  • 该ID是您在代码中使用的服务器端ID。
  • UniqueId对应于生成的HTML元素的“名称”属性。
  • ClientID对应于生成的html元素的“ id”属性。因此,这取决于您需要哪个属性(名称通过表单post发送,id用于DOM操作)。
  • 不确定uniqueclientid是什么:)

ASP.Net 4添加了clientIdMode,如果将其设置为“ static”,则可以强制id属性与服务器端ID匹配(因此更可预测)。



 类似资料:
  • Categories: Methods | UI Core .uniqueId()Returns: jQuery Description: 为匹配的元素集合生成并申请一个唯一的 Id。 version added: 1.9.uniqueId() 该方法不接受任何参数。 许多小部件需要元素生成唯一的 id。.uniqueId() 会检查元素是否有 id,如果元素没有 id,它将生成一个 id,并设置

  • 所属类别 方法(Methods) | UI 核心(UI Core) 用法 描述:为匹配的元素集合生成并申请一个唯一的 Id。 返回:jQuery 版本新增:1.9.uniqueId() 该方法不接受任何参数。 许多小部件需要元素生成唯一的 id。.uniqueId() 会检查元素是否有 id,如果元素没有 id,它将生成一个 id,并设置为该元素的 id。在未检查元素是否具有 id 就调用 .un

  • 目前Artemis拥有ActiveMQSecurityManager4。当使用以下方法时,它提供了大量的控制:

  • 我可以看到一些贝宝付款已经完成使用贝宝clientId, ClientSecret而其他类型的付款通常nvp付款是使用用户名,密码和签名付款。使用客户端ID和秘密付款与使用用户名、密码和签名付款有什么区别。请对此作出解释。

  • 在Postman中,我可以使用 回调URL Auth URL 客户端ID 我如何使用C#代码做同样的事情?