日期:2014-05-18  浏览次数:20475 次

服务端控件和HTML控件区别 求教!!!
很多人用HTML控件
  <input id="Text1" type="text" runat="server" />

如果写了 runat 那和服务端控件
  <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

有什么区别呢?



------解决方案--------------------
前者是在浏览器里面运行的,后者是给asp.net引擎用来渲染html的。
<asp:TextBox ...>会被渲染成<input ...>之类的html代码,发送给浏览器,浏览器再运行,产生一个用户界面。
------解决方案--------------------

你可以看最终aspx页生成的源码,其实最终生成的没有区别

服务器控件通过ViewState维持状态,而HTML没有。。。

如果没有交互的,可以直接用HTML控件。。。
------解决方案--------------------
因为后者需要渲染。所谓渲染就是计算。

比如我们说显示卡对模型渲染,产生图像就是说,模型提供了某个坐标处有一个球。显示卡就计算,这个球最后代表哪几个像素点。

在这里,你告诉asp.net,这里有一个textbox控件。但是究竟产生什么html代码,就需要计算,这个计算也可以叫渲染。
------解决方案--------------------
探讨
引用:

其实两者都运行在服务器端,asp.net负责将其转换为浏览器端标记,然后由浏览器根据不同情况显示出来。


这个说法应该是有误的。。HTML控件是运行在客户端的。。。

其实主要是找runat="server"这个标记

------解决方案--------------------
探讨
引用:
引用:
引用:

其实两者都运行在服务器端,asp.net负责将其转换为浏览器端标记,然后由浏览器根据不同情况显示出来。


这个说法应该是有误的。。HTML控件是运行在客户端的。。。

其实主要是找runat="server"这个标记

Html控件和Web控件……

------解决方案--------------------
探讨
引用:
引用:
引用:

其实两者都运行在服务器端,asp.net负责将其转换为浏览器端标记,然后由浏览器根据不同情况显示出来。


这个说法应该是有误的。。HTML控件是运行在客户端的。。。

其实主要是找runat="server"这个标记

Html控件和Web控件……

------解决方案--------------------
Html控件(runat="server")运行在服务器端,经过服务器asp.net处理后,生成的html、css和js代码,最终在浏览器端上显示。