首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.Net WebForm温故知新学习笔记:二、ViewState与UpdatePanel探秘

然后,再对曾经很流行ASP.Net AJAX方案中利器—UpdatePanel这个神奇区域一探究竟。...后来,我们发现原来每一次请求服务器都开启了不同线程来处理,也就是说每次都会new一个XXX.aspx.cs中类对象实例来进行处理(上一次new出来为我们处理page对象也许早就被服务器销毁了)。...这是一个整页刷新操作,不符合AJAX风格需求。...UpdatePanel里面的html内容,页面也没有再刷新,于是不禁感叹一句:AJAX,So easy!...现在基于jsJQuery库也早已为我们封装了XmlHttpRequest,提供了ajax开发一系列方法供我们调用,相当于UpdatePanel“重量级”来说,可谓是轻了不少,是一个“轻量级”AJAX

1.7K30

Ajax系列之异步调用导致不同步问题

业务场景:点击一个按钮时候保存数据,同时打开一个弹窗带出保存数据 基于这样业务场景,最近遇到一个问题,是在ie11才发现,点击按钮时候,后台打断点加数据库查询都验证数据是保存正确,不过已经保存数据是带不到弹窗页面的...,问题比较奇怪,排查了挺长时间,最开始因为在ie才能重现问题,在极速模式360浏览器是没问题,而且第一次点击时候没带出数据,第二次点击时候才可以带出数据,然后很容易让人联想到ie缓存问题,不过调了大半天...加上ajax不缓存代码,已经改成post请求,或者get请求连接后面加上一个时间戳参数都不奏效 $(function(){ //ajax不缓存请求结果 $.ajaxSetup({cache...alert提示,发现果然,关联alert弹窗提示之后,数据正常带出,所以确定是因为异步导致 保存代码,注意async:true,,这里是异步,之前可能是考虑性能问题,改成异步 $.ajax({...,解决方法是用回调函数: 保存函数: function saveRecord(seq,callback){ $.ajax({ url:'${root}/saveOrUpdate.do',

1.4K40
您找到你想要的搜索结果了吗?
是的
没有找到

ASP.NET AJAX UpdatePanel 控件实现剖析

那这个控件是如何实现这种局部刷新哪,透过其实现机制我们可以更清楚其优缺点,便于我们确定其使用场合。本文将重点阐述ASP.NET AJAX控件UpdatePanel实现机制。 1....而远程服务则是直接通过前端JavaScript来调用服务器端服务,前段获取数据后,进行页面更新,这就要求服务器端代码必须分解为特定于应用程序服务,这是与传统ASP.NET应用程序完全不同体系结构...> 构建如上代码所示页面,在Runtime点击UpdatePanelButton控件,则不会引起整个页面刷新,只是用来显示当前时间Label得到更新。...3.2 服务器端处理 AJAX回发请求到达服务器之后,当前页面的生命周期跟普通回发引起请求是一样,页面的Init、Load和Render等等事件都会被触发,差别只是在于AJAX回发使用了不同呈现画法...PageRequestManager_onFormSubmitCompleted方法来进行页面局部更新,最终会调用_updatePanel方法来更新UpdatePanel控件。

6.7K100

如何在使用了updatepanel后弹出提示信息

转载:http://www.cnblogs.com/brusehht/archive/2009/03/19/1416802.html 常情况下,我们在使用ajax利用updatepanel实现页面局部刷新时需要有提示信息...,而传统方式是利用 Page.ClientScript.RegisterStartupScript来注册客户端脚本实现信息提示,但这种方式在ajax中不起作用,必须选择 System.Web.UI.ScriptManager.RegisterStartupScript...System.Web.UI.ScriptManager.RegisterStartupScript(this.updatepanel1, this.GetType(), "unReport", "alert...;window.close();", true); 下面给出一个函数用于实现弹出提示信息: public static void Show(System.Web.UI.UpdatePanel updatePanel..., string msg) { ScriptManager.RegisterStartupScript(updatePanel, updatePanel.Page.GetType(), "message

91710

ASP.NET AJAX(11)__ScriptManagerUpdatePanel支持成员功能控制成员脚本控件支持成员ScriptMode和ScriptPathLoadScriptsBeforeU

ScriptManager作用,这个不言而喻,它是整个ASP.NET AJAX核心 UpdatePanel支持成员 static void RegisterArrayDeclaration static...脚本中调用此 Web 服务,请取消对下行注释。...在web.config中找到system.web节点下compilation,设置其,这样我们项目就出于一个发布模式,我们再次刷新页面,观察它引入脚本文件... 我们发现,页面上显示了我们加载页面使用了两秒多一点事件,因为我们在那个一般处理程序中,线程停止了两秒钟 我们对ScriptManager做如下处理 <asp...设置为false,再刷新页面,发现页面中显示加载时间显示很少,这时我们打开页面源代码,可以看到,脚本被加载到了页面代码尾部,在form结束之前,同时我们看到,windows.onload事件,仍然是在页面全部加载完以后才被调用

89060

锋利JQuery学习笔记之JQuery-Ajax应用

今天终于看到了最令我兴奋一章:JQuery与Ajax应用。...在最初学习Ajax日子里,我被ASP.NET AJAX框架提供UpdatePanel迷惑了,以后Ajax就这么简单,所以在最初做几个项目里,前台代码里必至少有一个UpdatePanel区域,把要局部刷新内容全放到这个...Panel里面,殊不知一个UpdatePanel只适合于局域网内部信息系统,不适合在前台互联网中使用,这样效率很低。   ...于是,我带着好奇心情观看了itcast杨中科老师2010版视频第13季Ajax,明白了应该是XMLHttpRequest对象开始学起,它是Ajax核心内容,也是实现关键-发送异步请求、接收响应以及执行回调都是通过它来完成...(){//一旦readyState值改变,将会调用这个函数   if(xmlHttpReq.readyState == 4){     if(xmlHttpReq.status == 200){

67440

UpdatePanel概览

微软asp.net ajax为我们进入AJAX世界提供了方便入口,让许多不熟悉js甚至不了解什么是ajax的人也能享受到ajax技术好处.在asp.net ajax 1.0中,updatepanel...下面列举UpdatePanel属性及含义: ChildrenAsTriggers:这个属性表面意义上来看也能猜出个大概,它就是说明该UpdatePanel控件内部子控件是不是要作为触发器(Triggers...哈哈~~:) 另外,如果在服务器端调用了它Update()方法,该UpdatePanel也会更新....首先,和理想ajax程序相比,它大大增加了网络传输量.理想ajax程序只是在页面加载时传送html,其它后续与服务器端交互都只是传送数据.而updatepanel则在交互中传输了所有包含在它之内数据...,不过听说开发起来比较困难.在了解过服务器端ajax控件后,我准备去学习一下客户端解决方案.

38620

ASP.NET AJAX(2)__ASP.NET 2.0 AJAX Extensions

_____UpdatePanel _____Extender 微软ASP.NET AJAX有一点非常让人感觉神奇一点,也算是他宣传一个鳌头,说是,所有的ASP.NET程序员,不用写任何...javascript代码就可以实现AJAX,那么UpdatePanel呢,就是说着话资本,我们也知道,几乎所有的服务端控件,只要简单把它嵌套在UpdatePanel里,然后做一些简单设置,就可以实现为一个...AJAX效果,但是,这样也就很容易造成一个AJAX滥用,我们知道,AJAX特点嫩,就是提高用户体验,减少了客户端和服务器端之间数据访问,而使用UpdatePanel,实际上并没有减少发送给服务器端数据量...脚本中调用此 Web 服务,请取消对下行注释。...WebService时,在基础参数后,还需要添加一个回调函数,实际上,不只是一个回调函数,这个以后将会写到,这里先留一扣子吧 和调用一般处理程序不同是,这里,我们就可以使用拿到对象了,而不需要对它进行反序列化

1.6K60

ASP.NET AJAX(3)__UpdatePanel

看一个UpdatePanel示例 首先在页面中加入一个ScriptManager,这个控件起一个对AJAX一个统一管理调配作用,一个页面中有且仅有一个,我们通常会把它放到母板页里,方便使用...可以在页上放置多个 UpdateProgress 控件,其中每个控件都与不同 UpdatePanel 控件相关联。...属性:是否出于异步更新过程中           abortPostBack方法:取消当前异步更新,多次调用不会产生异常      PageRequestManager在客户端形成声明周期(异步刷新时触发...,让他线程停止两秒种,这样我们会发现,在点击UpdatePanel一个按钮时候,UpdateProgress并没有显示Loading字样,其实这就是在UpdateProgress绑定一个UpdatePanel...(异常,超时等) 获得请求结果中额外信息 一个处理异步刷新结果示例 创建一个页面,添加ScriptManager,然后添加如下代码 <asp:UpdatePanel ID="UpdatePanel1

4.9K50

UpdatePanel 控件

大家好,又见面了,我是你们朋友全栈君。 UpdatePanel 控件 使用了 UpdatePanel 控件方案是 ASP.NET AJAX 扩展中重要方案。...ScriptManager 控件 Beta 2 更改:ScriptManager 控件提供了 SupportsPartialRendering 属性,该属性初始值是服务器上浏览器功能派生而来。...Beta 2 更改:ScriptManager 控件提供了 RegisterDispose 方法,可在注册客户端组件时作为可释放对象进行调用。...这减少了使用 UpdatePanel 控件定义异步回发时所需步骤。 为了降低控件复杂程度,已将 ScriptManager ErrorTemplate 属性 RTM 版本中删除。...开发与 UpdatePanel 控件兼容控件 RTM 重要更改:在 ASP.NET 2.0 AJAX Extensions 1.0 最终版本中,Beta 和 RC 版本中包括要与异步回发兼容 ASP.NET

1.3K30

ASP.NET AJAX(15)__构建高性能ASP.NET AJAX应用UpdatePanel性能问题使用UpdatePanel注意事项脚本加载避免脚本阻塞页面显示AjaxControlTool

UpdatePanel性能问题 在UpdatePanle使用时候,它每次更新都是将整个页面回送,而且也会加上一些他更新标记,所以往往它传递数据量比传统PostBack都要多,这其实是违背AJAX...PostBack后只需要更新必要UpdatePanel(将UpdatePanelUpdateMode设置为Conditional,在需要更新UpdatePanel时候,调用Update方法),或者使用...,因为他调用了两次GetData方法,我们设置了页面的UpdatePanelUpdateMode为Conditional,所以,在我们每次点击按钮时候,只会更新包含它Update,这样我们点击按钮...,就只会调用一次GetData方法,而且我们把UpdateMode设置为Always(默认),每次发回给客户端数据量来看,也会大了很多 脚本加载 在发布时一定要把ScriptMode设置为Release...其他 几乎所有能够提高Web应用程序性能做法都可以提高AJAX应用程序性能 合理利用缓存 优化数据库 合并小图片以较少round-trip Keep-Alive 压缩 并行加载资源 ……

859100

ASP.NET AJAX(14)__UpdatePanel与服务器端脚本控件脚本控件作用脚本控件指责Extender模型脚本控件和Extender模型在PostBack中保持状态在UpdatePa

脚本控件作用 ASP.NET AJAX脚本控件,连接了服务器端和客户端,因为我们(可以)只在服务器端编程,而效果产生在客户端,这就需要我们首先在服务器端编写一个控件类,然后包含一个或几个脚本文件,其中定义了客户端组件...,ScriptControl精髓在客户端,在普通服务端控件中使用ViewSate并,它不能保持客户端状态 组件状态可能在客户端被改变 需要在PostBack前后保持客户端状态 在异步刷新中,由于不刷新整个页面...,因此可以保存在页面变量中,但是完整PostBack需要将状态客户端提交到服务器端,然后再写回给客户端,客户端向服务器端提交信息方法有以下三种 Query String(改变URL) Cookie...(作用域太大) Input+Post 那么,如果我们要保存页面的某个状态,就分两种情况啦 一种是异步刷新,因为异步刷新时候,页面并没有销毁,所以,我们可以把保存这种状态键值放在window对象或者一个...唯一方法就是调用ScriptManager脚本注册方法 开发一个控件,在普通加载时简单输出内联脚本,在异步更新时调用脚本注册方法 一个内联脚本示例 创建一个aspx页面 <%@ Page Language

2K70

AJAX控件UpdatePanel使用详解

AJAX控件UpdatePanel使用详解(一) UpdatePanel可以用来创建丰富局部更新Web应用程序,它是ASP.NET 2.0 AJAX Extensions中很重要一个控件,其强大之处在于不用编写任何客户端脚本...UpdatePanel控件概述 UpdatePanel可以用来创建丰富局部更新Web应用程序,它是ASP.NET 2.0 AJAX Extensions中很重要一个控件,其强大之处在于不用编写任何客户端脚本...UpdatePanel重要属性如下: 属性 说明 ChildrenAsTriggers 当UpdateMode属性为Conditional时,UpdatePanel子控件异步回送是否会引发UpdatePanle...时当前UpdatePanel中控件引发异步回送或者整页回送,或是服务器端调用Update()方法才会引发更新该UpdatePanel。...异步更新触发器,它需要设置属性有控件ID和服务端控件事件;PostBackTrigger用来指定在UpdatePanel某个服务端控件,它所引发回送不使用异步回送,而仍然是传统整页回送。

1.1K20

UpdatePanel简单用法(非嵌套)「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 ScriptManager和UpdatePanel控件联合使用可以实现页面局部异步刷新效果。...UpdatePanel用来设置页面中局部异步刷新区域,它必须依赖于ScriptManager,因为ScriptManager控件提供了客户端脚本生成与管理UpdatePanel功能。...时,当前UpdatePanel中控件引发异步回送或整页回送,或是服务器端调用Update()方法才会引发更新该UpdatePanel。...UpdateMode设为Always,则所有的UpdatePanel刷新UpdatePanel1UpdateMode设为Always,UpdatePanel2UpdateMode设为Conditional...都设为Conditional,否则四种情况效果与上一示例相同 f.一个UpdatePanel上可以有多个触发器,实现在不同情况下对该UpdatePanel控件内容地更新 <asp:ScriptManager

85020

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券