input type="button"和asp:Button的区别 您所在的位置:网站首页 车子menu按钮和home按钮区别 input type="button"和asp:Button的区别

input type="button"和asp:Button的区别

2024-07-09 03:43| 来源: 网络整理| 查看: 265

参考 https://www.cnblogs.com/fengwei0813/p/5574385.html https://bbs.csdn.net/topics/110186772 < input type=“button” id="" value="" OnServerClick="" runat=“sever” > < asp:Button ID="" Text="" runat=“server” OnClick="" /> 这两种控件的区别

ASP.NET控件 html控件< input type=“button”>

前一种叫 Html 客户端控件 后一种叫 Web 服务器控件

(服务器控件实际上就是客户端控件在客户端的映射而已)

< input type=“button” id="" value="" OnServerClick="" runat=“server” > 你不用.net用Java,php,asp都可以。因为它是HTML < asp:Button ID="" Text="" runat=“server” OnClick="" />

只有安装.netFrameWork的服务器才能解析的来,因为它是asp.net服务器控件。

服务端控件在服务器解析后,HTML代码是和客户端控件是一样的 服务端控件有很多的功能,但耗用资源,客户端控件反

HTML 服务器控件 对服务器公开的 HTML 元素,可对其进行编程。HTML 服务器控件公开一个对象模型,该模型十分紧密地映射到相应控件所呈现的 HTML 元素。

Web 服务器控件 这些控件比 HTML 服务器控件具有更多内置功能。Web 服务器控件不仅包括窗体控件(例如按钮和文本框),而且还包括特殊用途的控件(例如日历、菜单和树视图控件)。Web 服务器控件与 HTML 服务器控件相比更为抽象,因为其对象模型不一定反映 HTML 语法。

…………………………………………………………………………………………(可省↓) 服务器只认识input,我们可以直接写input

但是asp是要把自己自动翻译成input再交给服务器的。其实是一样的东西

asp控件,直接可以用c#编程 input加上 runat=“server” 也被c#编程了

HTML控件是为了兼容性考虑的,如果你直接用ASP.NET独有的控件,这个网页就不能再其他程序中正常编辑,比如Dreamweaver,这样不方便网页设计师和程序开发人员的分工协作。还有一些Javascript对ASP.NET控件的兼容性也不太好;

另外ASP.net控件或多或少会消耗一些服务器资源,这些控件最终会经过服务器的转换成为HTML控件,这一转换是要消耗资源的,但是这种消耗微乎其微。 比如< ASP:Textbox>对应< input type="text>, < ASP:button>对应< input type=“button”>或者 其实ViewState实现原理也是将一些信息放到隐藏的一个控件中,并且asp.net生成的ViewState信息 是存储在客户端的 这里要注意的一点是: 只有当格式为*.aspx文件,并且控件具有属性:"runat=server"时,回送功能才能打开

Html控件与Web控件最大的区别是它们对事件处理的方法不同。对于Html窗体控件, 当引发一个事件时,浏览器会处理它。但对于Web控件,事件仅由浏览器生成,但浏览 器不会处理它,客户端要给服务器发个信息,告诉服务器处理事件。 不过有些事件, 比如: 按下键/移动/鼠标等事件,Asp.net中没有这些事件 (因为这些事件即时性强,服务器处理得不够及时),这时候Html控件就发挥其作用了,结合Html事件协助完成.

如下是一些Html常用的事件: 在浏览器上执行的Html控件事件:

单击时触发:

鼠标弹起时触发:

//悬浮在控件上方时触发

//鼠标在控件上方移动时触发

//双击控件时触发

//当焦点在控件时,按键时触发

//按键按下时触发 < INPUT type=“button” value=“Click Me” οnkeydοwn=“alert(‘Hi,你好!’);” >

在不需要与后台进行交互时就使用HTML控件,它的占用的资源比较少,速度也比较快,在需要与后台进行交互时,就使用WEB控件,或者在HTML 控件上加上runat=“server” 也可以将一个HTML控件转换成交互控件,但这样占用的资源就和Web控件没任何分别了。 WEB控件可以响应服务器端事件,可以在后台代码中设置相关属性和方法等!HTML不可, WEB服务器控件需要通过服务器处理后译为HTML控件再发送给浏览器,所以比较耗费服务器资源,并由于有IEWSTATE,所以在回送的时候会保持控件状态(也可以设置不保存)也因此增加了回送信息量。HTML直接发送到浏览器,不另耗费服务器资源,但无状态保存! 获得HTML控件的值 需要使用REQUEST的FORM 方法,WEB控件就可以直接通过属性直接处理! 所以,一般来说,对于不需要保存控件状态,并无什么对值处理的地方就可以使用HTML 如果需要对控件进行动态的处理,或要保存其状态等 就可以WEB服务器控件!WEB服务器控件用起来个人认为要方便些,但是就是另外多耗费服务器资源! 很多书上都说,考虑性能的话在能不用WEB服务器控件的地方就尽量不用。 什么时候用什么时候不用还是要看具体情况,在条件宽松的情况下就看个人习惯了



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有