AJax技术

Ajax优化技巧

字号+ 作者:H5之家 来源:H5之家 2017-10-28 10:08 我要评论( )

1. updatepanle 不同情况的两种使用方法第一,直接用updatepanle的Triggers/Triggers属性直接设置页面的相关控件的事件,该方法使

1. updatepanle 不同情况的两种使用方法

第一,直接用updatepanle的Triggers/Triggers属性直接设置页面的相关控件的事件,该方法使用于简单使用updatepanle 或在同一个页面的同一个tab页。

第二,当在同一个页面存在多个tab页,并且不同的tab页的事件有所关联的时候,一般用在后台代码注册的方法比较适用。由于放在一个tab页的updatepanle可能无法识别或找到另一个tab页控件的触发事件,很容易导致出错,原因可能是你选的tab控件的类型所导致,我遇到过使用第三方的tab控件可以,但是使用微软或其他的第三方的tab控件却不行,虽然后者以后可能会解决这个问题,但为了你的程序能正常运行,使用代码注册不失为一个明智的选择。 比如你设计的一个页面有多个tab页,并且一个tab页里的某个控件的某个事件要触发另一个tab页的异步更新事件,那么最好用代码注册updatepanle的更新事件。

具体实现代码如下,也很简单: 首先在Page_Load向ScriptManager1注册异步更新的触发控件 ScriptManager1.RegisterAsyncPostBackControl(btnAdd); 然后再btnAdd的某个触发事件里调用要更新的方法, 最后该事件执行后,调用更新区域的updatepanle执行update方法即可。

2. 尽量减少在同一个页面(或tab页)里使用多个updatepanle控件

Upatepanle 可以减轻页面和服务器的通信负担,但滥用反而会增加页面和服务器的通信负担,同一个页面使用过多的updatepanle将导致出现多次的往通信,比如一个事件源触发多个更新事件。一般情况下,在同一页面的同一个tab页或table里只需要使用一个updatepanle就够了,即使是不需要更新的控件也可以放在同一个updatepanle里,和需要更新的控件放在一起,只要不触发它的事件即可或者让其AutoPostBack为false即可。

自然如果由于业务的需要,特殊情况也要特殊对待。所以如果不是特别的业务需要,尽量让多个需要异步更新的控件放在同一个updatepanle里,统一异步更新,减少页面往返的通信次数。而至于统一异步更新,业务外观层(也就是页面层)可以借助table来解决,业务代码层(对应的页面后台代码)可以根据业务需求进行。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • ajax实现页面加载和内容删除

    ajax实现页面加载和内容删除

    2017-10-23 16:10

  • 使用PHP中的ajax做登录页面、验证用户名是否可用、动态调用数据

    使用PHP中的ajax做登录页面、验证用户名是否可用、动态调用数据

    2017-10-09 08:00

  • ASP.NET与Ajax的实现方式

    ASP.NET与Ajax的实现方式

    2017-09-18 16:03

  • WebFormaspx 页面通过 AJAX 访问WebFormaspxcs类中的方法,获取

    WebFormaspx 页面通过 AJAX 访问WebFormaspxcs类中的方法,获取

    2017-09-11 18:07

网友点评