基于Ajax:实时刷新数据,实时显示状态,局部刷新的示例。

本文介绍了一个使用ASP.NET AJAX实现的服务状态动态更新示例。通过客户端JavaScript调用服务器端方法,实时更新页面上显示的服务状态,并根据状态改变按钮的文本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

aspx页面:

_Default为类名称,GetServiceStatus为类中的一个方法。

ExpandedBlockStart.gifContractedBlock.gif<%dot.gif@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
None.gif
None.gif
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
None.gif
None.gif
<html xmlns="http://www.w3.org/1999/xhtml" >
None.gif
<head runat="server">
None.gif    
<title>Untitled Page</title>
ExpandedBlockStart.gifContractedBlock.gif    
<script language=Javascript>dot.gif
InBlock.gif        
InBlock.gif       
function SetMessage()
ExpandedSubBlockStart.gifContractedSubBlock.gif       
dot.gif{
InBlock.gif        _Default.GetServiceStatus(GetMessage_CallBack);
ExpandedSubBlockEnd.gif       }

InBlock.gif        
InBlock.gif       
function GetMessage_CallBack(response)
ExpandedSubBlockStart.gifContractedSubBlock.gif       
dot.gif{
InBlock.gif        
var btn = document.getElementById('<%=btnSet.ClientID%>');
InBlock.gif        
var btnPanel = document.getElementById('btnPanel');
InBlock.gif        
var lbl = document.getElementById('lblStatus');
InBlock.gif        
var status = response.value;
InBlock.gif        
switch(status)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
dot.gif{
InBlock.gif            
case "Running":
InBlock.gif                lbl.innerText 
= "运行中";
InBlock.gif                btn.value 
= "停止";
InBlock.gif                btnPanel.style.visibility 
= "visible";
InBlock.gif                
break;
InBlock.gif            
case "Stopped":
InBlock.gif                lbl.innerText 
= "已停止";
InBlock.gif                btn.value 
= "启动";
InBlock.gif                btnPanel.style.visibility 
= "visible";
InBlock.gif                
break;
InBlock.gif            
case "StartPending":
InBlock.gif                lbl.innerText 
= "正在启动dot.gif";
InBlock.gif                btnPanel.style.visibility 
= "hidden";
InBlock.gif                
break;
InBlock.gif            
case "StopPending":
InBlock.gif                lbl.innerText 
= "正在停止dot.gif";
InBlock.gif                btnPanel.style.visibility 
= "hidden";
InBlock.gif                
break;
ExpandedSubBlockEnd.gif        }

ExpandedSubBlockEnd.gif       }

InBlock.gif       
InBlock.gif
ExpandedBlockEnd.gif    
</script>
None.gif
</head>
None.gif
<body onload="setInterval('SetMessage()',100);">
None.gif    
<form id="form1" runat="server">
None.gif    
<table>
None.gif        
<tr><td width="250"><div id="lblStatus"></div></td><td>
None.gif            
<div id="btnPanel" style="visibility:visible"><asp:Button ID="btnSet" runat="server" Text="Button" OnClick="btnSet_Click1" /></div></td></tr>
None.gif    
</table>
None.gif    
</form>
None.gif
</body>
None.gif
</html>
None.gif


.cs文件

None.gifprotected void Page_Load(object sender, EventArgs e)
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif{
InBlock.gif        Ajax.Utility.RegisterTypeForAjax(
typeof(_Default));       
ExpandedBlockEnd.gif    }

None.gif
None.gif    [Ajax.AjaxMethod()]
None.gif    
public string GetServiceStatus()
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif{
InBlock.gif        
return ctl.Status.ToString();
ExpandedBlockEnd.gif    }

转载于:https://www.cnblogs.com/silva/archive/2007/04/11/709019.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值