问题标签 [clientid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - 为什么我不能在此处的标记中添加我的 textBox 的 clientId 以便我可以使用 jQuery 找到它?
只是我试图将一个文本框“txtPersonId”的客户端 ID 传递给客户端单击事件,以便我可以遍历该文本框控件并将其 jQuery 包装器传递给 loadePerson() 函数。
这就是我在 aspx 标记中标记它的方式:
但是当我渲染它时,
占位符保持原样,不会被呈现控件的客户端 ID 替换。
知道为什么会发生这种情况,我应该如何克服它?
asp.net - asp.net 外部 JavaScript 文件找不到 Control.ClientID
在加载时,我会调用 JavaScript setTimeout() 函数来隐藏 .NET 面板控件,并在首次加载时将其隐藏在后面的代码中。单击保存按钮会将面板设置为可见,然后重新加载页面,此时调用 setTimeout() 函数...所以基本上您单击保存,然后看到一个带有“已保存详细信息”的面板三秒钟,此时它消失。
问题是外部 JavaScript 文件找不到 _pDivAlert.ClientID(我已经调试过,它返回 null)。它仅在代码位于 .aspx 页面的标记中时才有效。关于如何将客户端 ID 传递给 HideControl() 函数或从外部 JS 文件中找到 ClientID 的任何建议?
这是我的代码,有什么建议吗?
我也尝试在 ToggleAlert() 调用中发送 ClientID,但这不起作用:
外部 JS:
asp.net-3.5 - 解决 ASP.NET 3.5 控件 ID 生成问题:在后续回发中以不同顺序创建控件时的回发事件
我正在为网站开发一个评论系统,并且在每个回发页面上为数据库中与该页面相关的每条评论生成一个用户控件(称为 ucComment)。每个 ucComment 都有一个响应按钮,允许您响应每个单独的评论。
当我终于意识到每次创建新评论时,下一次回发都会抵消所有页面的控件 ID,但我遇到了响应按钮不执行任何操作的问题。换句话说,当我单击 ctl00_Content_ctl00_ctl01_ctl0 7 _lbtnRespond 时,该控件实际上将在下一次回发时生成为 ctl00_Content_ctl00_ctl01_ctl0 8 _lbtnRespond。所以与 ctl07 相关的事件根本不会发生。
在网上闲逛时,我读到了关于覆盖 ClientID 的信息。我想如果我能以我想要的方式命名控件,我就可以绕过我的问题。 http://west-wind.com/Weblog/posts/4605.aspx 它看起来像一个很棒的 hack,但它不会触发事件,因为页面上生成的 ID 与控件中的 ID 表示方式之间存在差异树。
甚至还有一个人从 MasterPage 派生来改变控制树的工作方式,以使上述 hack 用于回发:http: //www.netquarry.com/index.php/2009/03/master-pages-ajax -and-javascript-10292/ 但我担心可能会产生不可估量的影响。
我应该怎么做才能让我的评论系统正常工作,以便我可以响应特定评论并让响应事件仍然触发,即使控件在该回发上被重命名?
c# - ASP.Net:ClientID 在用户控件的代码隐藏中不正确
以下代码不起作用。标记位于用户控件中,我想这就是为什么 ClientID 为 TextBox id 返回错误前缀的原因。
标记:
代码隐藏:
浏览器中的结果:
如您所见,JavaScript 调用的参数是DoctorsMainArea1_ctl00_txtName
,但输入元素的实际 id 是DoctorsMainArea1_ctl01_txtName
。
知道如何解决这个问题吗?jQuery?我对正在发生的事情的解释不太感兴趣(也许此页面上有另一个控件正在干扰),而是一种更强大的解决问题的方法。
javascript - 需要使用 javascript 的内容控件内的文本框的 clientId
我有一个包含所有 javascript 的母版页,在内容控件内部,有一个调用 javascript 函数的链接,一旦服务器以不同方式呈现,我想传递 id。
但是,我不断收到此错误:
属性访问必须分配给属性或使用它的值。
我怎么能做到这一点?
asp.net - 将 asp.net 2.0 网站部署到 Framework 4.0 时 ClientID 发生变化
我有一个托管在 GoDaddy 上的网站,它们有 4.0 版运行时。问题是服务器控件的客户端 ID 生成为“contentPlaceHolder1_drpBanks”,而之前(当网站位于其他服务器上时)生成为“ctl00_contentPlaceHolder1_drpBanks”。
我需要知道的是有办法解决这个问题,这样我就不必对代码进行任何更改。
就像 web.config 文件中的设置之类的。
c# - 通过clientID获得控制权
我解析了中继器项目控件的客户端 ID,并且我想在其他命令中使用它,我怎么不能通过他的客户端 ID 获得控件?
文本框 TB = FindControl...?
webforms - ASP.NET 4 webforms clientid 后缀为`_0`
去年,我们将所有新功能移至 ASP.NET MVC。
然而,我们仍然有大量带有大量 JavaScript 代码的旧版 WebForms 页面,而且我们不会很快有机会升级它们。
最近,我们还迁移到了 ASP.NET 4,这似乎破坏了这些遗留页面上的 JavaScript 代码负载。
客户 ID 之前的位置是:
现在他们变成了:
这个_0
后缀是从哪里来的?中只有一个controlWeWant
,panelControlName
所以后缀没有任何价值。
我知道硬编码的客户端 ID 对 WebForms 来说是个坏主意。我们迁移到 ASP.NET MVC 的原因之一是 WebForms 生成的糟糕的 HTML。然而,对于这个遗留代码,我们坚持使用它,我宁愿不去改变它(直到有一天我们有空闲时间来正确地做它)。
为什么 ASP.NET 4_0
完全添加后缀?
我可以关掉它吗?
有没有其他方法可以避免?
javascript - 使用javascript获取母版页中嵌套面板控件的clientID
这是控制结构
ContentPlaceHolder
--> 向导
--> 面板
我正在使用 setTimeout 在 x 分钟后显示面板。
如何获取面板的 ClientID?
所需的 javascript 行类似于:
aspx
javascript
asp.net - ASP.net 覆盖表单元素的客户端 ID
给定一个文本框:
这呈现为类似于:
我认为浏览器的自动完成功能不会将此名称/ID 识别为可以自动填充的字段,它们不是标准的识别名称。
有没有办法覆盖客户端 ID,以便自动完成有更好的机会识别它们?