ASP .NET AJAX:UpdatePanel在回发时上传整个页面?

时间:2009-06-08 15:06:21

标签: asp.net-ajax

有人可以解释UpdatePanel的工作原理吗? UpdatePanel进行回发时上传了什么?

我知道如何更新部分内容,但如何仅上传部分内容?

这不是关于UploadFile控件,而是关于回发上传。
页面上的所有控件是否都通过UploadPanel回发发送回发?

3 个答案:

答案 0 :(得分:2)

在客户端刷新更新面板时,POST请求会发回与正常回发相同的数据。在服务器上,请求将在其正常生命周期中运行,不同之处在于仅在作为此请求期间正在更新的更新面板的子控件的控件上调用呈现。这个部分html被发送回客户端,AJAX库将新的html插入到代表更新面板的客户端元素中。

答案 1 :(得分:1)

始终启动完整回发并运行整个页面。

但是,您可以使用

检测到它是部分回发
ScriptManager.GetCurrent(this.Page).IsInAsyncPostBack

并通过

检测哪个Updatepanel正在更新
Request["__EVENTTARGET"] == upFlightFare.ClientID

这样可以让您更轻松地处理服务器端的完整回发。

答案 2 :(得分:0)

如果回发源自UpdatePanel,并且UpdatePanel设置为允许PartialRendering,则UpdatePanel中的内容是发送/接收的内容,除非您在PostBackTrigger集合中指定回发控件。在这种情况下,将触发完整的回发,并且您的输入页面将回发。

我希望这会让事情稍微清楚一点, JP

编辑:为了清晰和简洁。