扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
介绍如何输出页面的局部html到客户端
往往看到有很多人使用web服务下载一堆(复杂格式编码过的)数据,然后使用相当复杂的客户端脚本代码来生成html指令进行显示。这样做累不累呀?有没有必要啊?
实际上,我们可以返回aspx页面的局部内容,可以把所下载到的html代码直接使用InnerHTML方法刷新到html对象上面。
假设我们有一个aspx页面,它上面有一个PlaceHolder名字叫做PlaceHolder1,我们希望当url参数xxx=1的时候就单单输出这个局部部分的html,就可以这样编写后台代码:
public override void VerifyRenderingInServerForm(Control control) { //base.VerifyRenderingInServerForm(control); } protected override void Render(HtmlTextWriter writer) { if (this.Request.QueryString["xxx"] != null && this.Request.QueryString["xxx"]=="1") this.PlaceHolder1.RenderControl(writer); else base.Render(writer); }
至于你的客户端脚本如何请求一个aspx页面,有很多种方式。你可以使用脚本直接以http的Get命令下载一个文件的方式;也可以使用ajax访问一个web服务来返回字符串,然后这个web服务再间接在服务器上get这个网页(反正这是本地)。
我们在url参数中不仅仅标记xxx,而且可以包含页号等等的更多信息,让aspx给我们直接下载复杂的html到客户端,而不是仅仅下载一堆数据到客户端。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者