3
運行後考慮以下情形:UpdatePanel的動畫只有超時
MasterpageFile1:
<%@ Master Language="VB" AutoEventWireup="false" CodeBehind="Frame.master.vb" Inherits="Project.Frame" ClientIDMode="Static" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server" name="form1">
<asp:ContentPlaceHolder ID="BodyPlaceHolder" runat="server">
</asp:ContentPlaceHolder>
</form>
</body>
</html>
嵌套的MasterPageFile:
<%@ Master Language="VB" MasterPageFile="/Project/Code/MasterPages/Frame.Master" CodeBehind="Master2.master.vb" Inherits="Project.Master2" %>
<asp:Content ID="Content2" ContentPlaceHolderID="BodyPlaceHolder" runat="server">
<input type="submit" id="btSubmit" runat="server" value="start" class="input" />
<asp:UpdatePanel ID="up" runat="server" UpdateMode="Always">
<ContentTemplate>
<div>CALCULATION RESULT GETS DISPLAYED HERE</div>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btSubmit" />
</Triggers>
</asp:UpdatePanel>
<ajaxToolkit:UpdatePanelAnimationExtender ID="upae" runat="server" TargetControlID="up">
<Animations>
<OnUpdating>
<Sequence>
<ScriptAction FPS="20" Duration="0.5" script="DoSomething();" />
</Sequence>
</OnUpdating>
<OnUpdated>
<Parallel>
<ScriptAction FPS="20" Duration="0" script="DoSomethingElse();" />
</Parallel>
</OnUpdated>
</Animations>
</ajaxToolkit:UpdatePanelAnimationExtender>
</asp:Content>
一個aspx頁,它加載一些樣式。
而且follwing jQuery代碼:
$(document).ready(function() {
$("#btSubmit").click();
});
此代碼觸發UpdatePanel的刷新。 OnUpdating Animation正在播放,Server執行一些計算任務並將結果發送給客戶端。客戶端建立在結果中,但OnUpdatedAnimation nevers播放。
如果我將jQuery代碼更改爲follwing,它工作正常。
$(document).ready(function() {
setTimeout(function() {
$("#btSubmit").click();
}, 1500);
});
可能有人能告訴我,爲什麼出現這種情況,如何來實現,即在計算開始時的DOM準備就緒,而不是1.5秒以後呢?
親切的問候, 索倫
得到了同樣的問題在這裏。 OnUpdating運行。結果被插入,但OnUpdated動畫未運行。控制檯不記錄任何錯誤或警告。 SetTimout也解決了這個問題,但這正是我想要避免的。 –