如何在更新面板中检查和停止更新进度的多个回发
How to check and stop multiple postbacks for Updateprogress inside an updatepanel
我正在为网页中的更新面板使用更新进度控件。 我为 updateProgress 指定了一个条件,只有当它获得相应的回发元素时,它才应该加载。仅当只有一个回发元素时,它才能正常工作。如何检查页面中的其他回发元素并启用更新进度控件。我的代码为
<style type="text/css">
.Background
{
position: fixed; left: 0; top: 0; z-index: 10; width: 100%;height: 100%;
filter: alpha(opacity=40);
}
</style>
<script type="text/JavaScript" language="JavaScript">
function pageLoad() {
var manager = Sys.WebForms.PageRequestManager.getInstance();
manager.add_endRequest(endRequest);
manager.add_beginRequest(OnBeginRequest);
}
function OnBeginRequest(sender, args) {
var postBackElement = args.get_postBackElement();
if (postBackElement.id == 'Button1') {
$get('UpdateProgress1').style.display = "block";
}
$get('ParentDiv').className = 'Background';
}
function endRequest(sender, args) {
$get('ParentDiv').className = '';
} </script>
我的 aspx 代码为
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
<div id="ParentDiv">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<td height="403">
<iframe id="IFOEvent" name="InIframe" scrolling="auto" runat="server"
width="75%" height="203" class=""></iframe>
</td>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>
</div>
<asp:UpdateProgress ID="UpdateProgress1" runat="server" AssociatedUpdatePanelID="UpdatePanel1">
<ProgressTemplate>
<div id="IMGDIV" align="center">
<img src="Images/loading.gif" alt="" /><br />
</div>
</ProgressTemplate>
</asp:UpdateProgress>
您有多种方法可以执行此操作。为什么不这样做,
-
将 ID 集推送到数组
-
在回发期间检查元素是否在数组中
-
作为常规异步回发处理
法典
function pageLoad() {
var manager = Sys.WebForms.PageRequestManager.getInstance();
manager.add_endRequest(endRequest);
manager.add_beginRequest(OnBeginRequest);
}
function OnBeginRequest(sender, args) {
var map = ["Button1", "Button2", "Button3"];
var postBackElement = args.get_postBackElement();
if (map.indexOf(postBackElement.id) !== -1) {
$get('UpdateProgress1').style.display = "block";
}
$get('ParentDiv').className = 'Background';
}
设置变量并更改其值结束 例如请求方法
var temp = 0;
function endRequest(sender, args) {
if(temp == 0)
{ $get('ParentDiv').className = '';
温度++;}还{温度 = 0;} }
您还可以使用隐藏文件来设置值。
- 如何从相应的控制器动态更新标题和描述
- Ajax和MySql的插入、检查和检索
- 如何检查和替换数组中的值
- HTML提交表单,同时包含空字段检查和按钮隐藏
- KnockoutJS更新行和字段
- 更新Wordpress和我的平滑滚动停止工作
- 节点.js表单更新有和没有 ajax
- FabricJS CurvedText对象(扩展)在更新间距和文本属性时未显示
- 更新面板和模式窗口
- 使用GLYPH图标作为复选框(图标检查和图标检查为空),如何获得检查的行总数
- Symfony Twig+Haml标记属性检查和属性脚本
- 如何在jQuery中的单个保存按钮上更新数据和添加数据
- 与D3通用更新模式和组作斗争
- d3.js无法使用通用的更新模式和转换
- 模式弹出、更新面板和客户端更新
- 更新视图和控制器之间的角度重复数据值的最佳方式是什么
- JavaScript 双空检查和锁定
- 网页编辑器,以便页面在我更新JavaScript和HTML时刷新
- 如何检查和删除不再需要的数组项
- 如何在更新面板中检查和停止更新进度的多个回发