1
101
这很奇怪。我检查了 CheckBox documentation page 哪读
如您所见,没有定义onclick或onclientclick属性。 记住这一点,我认为这就是正在发生的事情。 当你这样做的时候,
ASP.NET不会修改onclick属性,并将其呈现为浏览器上的属性。它将呈现为:
显然,浏览器可以理解“onclick”并发出警报。 在这种情况下
同样,ASP.NET不会更改onclientClick属性,并将其呈现为
因为浏览器无法理解客户端的单击,所以不会发生任何事情。它也不会引发任何错误,因为它只是另一个属性。 您可以通过查看呈现的HTML来确认以上内容。 是的,这根本不是直觉。 |
2
9
因为它们是两种不同的控件… 你看,你的网络浏览器不知道服务器端编程。它只知道它自己的DOM和它使用的事件模型…以及渲染到它的对象的单击事件。您应该检查从ASP.NET实际发送到浏览器的最终标记,以查看自己的差异。
呈现给
和
呈现给
现在,据我所知,在任何地方都没有浏览器支持其DOM中的“onclientclick”事件… 如果有疑问,请始终查看发送到浏览器的输出源…您可以看到整个调试信息世界。 |
3
8
你说得对,这是前后矛盾的。正在发生的是,该复选框没有服务器端onclick事件,因此您的标记将呈现到浏览器。 http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.checkbox_events.aspx 而按钮确实有onclick,所以ASP.NET希望在onclick标记中引用一个事件。 |
4
5
对于那些来这里寻找服务器端的人
|
5
1
我正在清理警告和消息,并看到vs对此发出警告: 验证(ASP.NET):属性“onclick”不是元素“checkbox”的有效属性。使用HTML输入控件指定客户端处理程序,然后就不会得到额外的SPAN标记和这两个元素。 |
6
0
您可以这样做标记:
调用的javascript中的.checked属性将正确…复选框的当前状态:
|
7
0
ASP.NET复选框不支持方法OnClientClick。
C:
注意:确保您没有在页面标题中设置autoeventwireup=“false”。 VB:
|
8
-1
一种解决方案是使用jquery:
|
ManP22 · 我想在同一次单击中调用两个常量 2 年前 |
Kyle Underhill · 活动按钮单选文本交换 6 年前 |
Timmy · 使用元素类获取元素id 6 年前 |
peace_love · 如何使表格滚动到某个位置? 6 年前 |
William · 海龟鼠标事件仅在超时后响应,而不是在您单击时响应 6 年前 |
deecobbk · 如何将js onclick事件添加到帧动画 6 年前 |