我在asp上工作.net项目,每次我需要使用jquery标识符$(#"objectID").我必须将每个对象上的ClientMode更改为静态.因为我注意到默认的客户机ID模式是Inherit,所以我将MainContent客户机ID模式设置为静态,我发现所有对象都变成了静态.

在使用jquery时,这肯定会节省很多时间,但我只想知道这有什么缺点,以及为什么ClientIDMode一开始不应该设置为静态?

推荐答案

对于用户控件之类的东西,您需要小心地将ClientIDMode设置为Static,否则最终可能会得到具有相同ID的多个元素.

对于像GridView这样的数据绑定控件,您还需要使用ClientIDRowSuffix属性来确保各行是不同的.

This post有一些很好的例子.

Asp.net相关问答推荐

Asp.Net Core 创建一个控制器来使用 SendGrid 发送邮箱

web.config 部分的单独配置文件

威胁已经被清除了

加载特定 UpdatePanel 后如何调用客户端 javascript 函数

如何判断一个IP地址是否是私有的?

使用 jQuery.ajax() 时如何处理错误?

ASP.NET IIS - 请求何时排队?

System.Web.HttpContext 无法识别

在使用网络服务器加载它们之前,如何编译 Asp.Net Aspx 页面?

Razor 主机工厂错误

如何解决 Kerberos 双跳问题?

LINQ to Entities 无法识别 MVC 4 中的System.String ToString()方法

ASP.NET Core 2.0 为同一端点结合了 Cookie 和承载授权

设置 Response.Status 生成HTTP 状态字符串无效异常

错误请求 - 无效的主机名 ASP.net Visual Studio 2015

OWIN 和 Katana,为什么要将应用程序与服务器解耦?

将列表转换为 json 格式 - 快速简便的方法

避免在 ASP.NET MVC 中使用会话状态是一种好习惯吗?如果是,为什么以及如何?

如何判断字符串的第一个字符是否是字母,C#中的任何字母

字体真棒里面asp按钮