如何经过JavaScript构建Asp.net服务端控件

摘要

虽然ASP.NET的服务器控件一直被你们所诟病,可是用户控件(ACSX)在某些场景下仍是很是有用的。服务器

在一些极特珠的状况下,咱们会使用JavaScript动态的构建页面中的控件,但假设遇到了我要用JavaScript构建一个服务端控件、用户控件时,该怎么办?

spa


 

 

咱们经常说,服务端控件运行在服端器上,那么这话是什么意思呢?3d

服务端控件,其本质是一构建HTML语句的封装,以事先编排好的方式,生成一套HTML并经过Http协议返回给客户端。所以,咱们所写的服务端控件,在响应HTTP请求时,早已不存在了。——这就叫运行在服务器上ip

即然如此,那么客户端天然没有解析一个服务端控件的可能。get

 


 

根据上面的原理,咱们能够得知,直接经过JavaScript向body中输出一个服务端控件毫无心义iframe

那么咱们换一个思路,即然服务端控件的构建必定要经过WEB服务器,那么咱们可不能够经过一次HTTP请求,而且在不破坏当前面页的状况下,获得服务端控件所转换后的HTML原码呢?it

有了这个思路,那么解决方案就很简单了——iframe原理

咱们能够单独设立一个ASPX页面,该页面的BODY上主要就是服务端控件,而后经过IFRAME的加载,将这个服务端控件显示在了当前的页面中。请求

 


固然,这只是一种效果,它并无真正意义上用JavaScript构建了一个服务端控件。而是构建了一个只包含了服务端控件的iframe。客户端

若是变通一下的话,能够经过一些JavaScript代码,将这个iframe中的全部元件,添加到主页面里,并移除iframe,这样,就成为了一个总体的页面,只不过可能会面临一些控件ID冲突的结果。

 

 

 

文章为做者原创,转载请注明出处 http://www.zizhusoft.com/note/show.aspx?id=f562b47a-ddd0-4771-a93d-78e9fdbd7b72 ,谢谢合做

相关文章
相关标签/搜索