ASP.NET Button vs Linkbutton Enabled =“false”行为

时间:2009-03-25 21:46:50

标签: asp.net webforms linkbutton

为什么ASP.NET LinkButton控件具有OnClientClick属性并通过设置Enabled="false"仍然在HTML中呈现onclick事件处理程序,而Button控件不在吨?

这似乎违反直觉。由于在浏览器中无法真正禁用锚点,因此如果已在服务器端禁用了onclick事件(和href属性),则更有意义。

2 个答案:

答案 0 :(得分:2)

嗯,我同意它没有太大的用途,但是如果不改变linkbutton使用asp.net内置的众多方法之一渲染的方式,那么你真的没有任何关于它的方法。除非您想有条件地处理客户端代码中的点击并检查元素属性。这就是当前实现的方式,因此当您需要可以禁用的按钮功能时,最好完全停留链接按钮或锚点。

答案 1 :(得分:0)

这与asp.net没什么关系。

即使禁用,超链接按钮仍会触发onclick事件。底线:烘焙成HTML。 (输入标记在禁用时不会触发。)

 <a href="javascript:alert('Hello!');" disabled="disabled">Click Me!</a>