2011-07-25 111 views
4

我正在学习asp.net。我有关于示例按钮的问题asp:按钮和html按钮的区别

我可以使用两种类型的按钮。

<input id="Button1" type="button" value="button" /> 

<asp:Button ID="Button3" runat="server" Text="Button" /> 

什么是两者之间的主要区别?

+6

一个是服务器控制另一个客户端控件。 – leppie

+0

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.aspx –

回答

2

一个是服务器控件(asp按钮),当在页面上呈现时,它包含处理回发逻辑的JavaScript,并且可以通过其ID来暴露给代码隐藏作为控件。 Html控件是平台不可知的,并且由您的浏览器呈现为一个按钮。该按钮将引发点击事件,但不会发布您的表单。

+0

但是当我想写功能点击html按钮我必须写在javaScript中,是吗? – nirmus

+0

@nirmus - 在asp控件的情况下,你可以把它作为后端的asp.net代码,或者在按钮声明中加入一个“OnClientClick”处理程序来写成前端代码。在任何一种情况下(asp或html),你都可以通过内联(拇指向下)或者使用jQuery(竖起大拇指)连接一个“OnClick”处理程序。 – davecoulter

1

每次点击都会使服务器往返,这不应该每次都发生。 HTML按钮要轻得多,应该用来制作客户端 - 逻辑如客户端验证,运行客户端脚本等......
ASP按钮会在每次点击时发出一个POST,html按钮不会。

+0

但是当我想写功能点击html按钮我必须写在javaScript中,是吗? – nirmus

+0

如果你的onClick函数是复杂的,你应该。如果它只显示一些链接,你可以只用html来完成。当然,如果你想这样做,你可以将一个点击事件与一些php脚本文件联系起来。 –