gpt4 book ai didi

c# - 我可以停止 .NET 吃掉 ID 吗?

转载 作者:IT王子 更新时间:2023-10-29 04:32:47 27 4
gpt4 key购买 nike

我现在的职业是信息架构师和 JavaScript 开发人员,但最近我又回到了后端编码领域。而且,在尝试集成 HTML 原型(prototype)并与我们基于 C# 的 CMS 一起工作时,我与我们的程序员发生了冲突,原因是 .NET 为表单元素任意重写了 HTML ID 属性。

我可以理解 .NET 更改 ID 的代码隐藏推理,但事实是您在尝试开发时不能再使用 ID,例如jQuery 增强接口(interface)引起了一些摩擦。我该怎么做才能解决这个问题?

我试过使用 class 属性来代替,但这真的很糟糕,不是它的本意,也没有解决 .NET 有效地即时更改渲染源的问题。这也意味着 CSS 现在用处不大,创建和维护的效率也较低。

非常感谢您提供任何提示或建议——任何可以减少几个不眠之夜的东西...

最佳答案

简短的回答是否定的,对于 webforms,id 总是可以根据元素的嵌套来重写。您可以通过 ClientID 属性访问 id,因此您可以在页面/控件末尾的脚本中将 id 设置为变量,然后将它们放入 jQuery。

像这样:

<asp:button id="ImAButton" runat="server">Click Me</asp:button>

<script type="text/javascript">
var buttonId = "<%=ImAButton.ClientId%>";
$("#"+buttonId).bind('click', function() { alert('hi); });
</script>

我知道这是一个技巧,但它会起作用。(对于初学者,我应该注意,我正在使用 Prototype $ get by id 方法)

关于c# - 我可以停止 .NET 吃掉 ID 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38998/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com