.net – 为什么我看不到服务器端控件生成的ID?
作者:互联网
我现在对此感到困惑.让我解释:
我看到有人在谈论在asp.net(3.5)中向页面添加一个按钮或其他控件,并且当控件呈现时它会更改该控件的Id,例如. Button1成为Button1_somethingsomething阻止他们使用jQuery,他们最终使用的是<%controlId.ClientId%>
所以我做了一点测试
1. I added a button on the page:
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<div>
2. Then I added a JavaScript and jQuery:
<script type="text/javascript">
$(document).ready(function() {
$("#Button1").click(function() {
alert("Hello world!");
});
});
</script>
3. The generated html is this:
<div>
<input type="submit" name="Button1" value="Button" id="Button1" />
<div>
现在,我没有看到ASP.NET(asp.net 3.5)改变了ID.为什么我会看到不同的行为?
顺便说一句.当我按下按钮时,这确实有效!
谢谢.
解决方法:
ASP.NET仅在控件位于Naming Container内时更改ID.这可能包括某些用户控件,母版页中的ContentPlaceHolders以及重复控件(Repeater,GridView等)
标签:jquery,javascript,net,asp-net,asp-net-3-5 来源: https://codeday.me/bug/20190722/1499395.html