ajax取DataTable的应用

本文介绍了一个使用 ASP.NET AJAX 实现的弹出通知功能。通过 JavaScript 和 ASP.NET 后台服务交互,实现了获取特定用户的未读通知并动态更新页面的功能。当用户登录系统后,能够立即看到其未读的通知列表。
<script language="javascript" type="text/javascript">
    var flag
=false;
    function AnounceShow()
    
{
        flag
=false;
        var uid
=GE("Anounce_Uid").innerText;
        
if(uid.length>0)
        
{
            AnounceService.GetAnounce(uid,AnounceComplete,onFailed);
        }

    }

    function AnounceComplete(result)
    
{        
        var o
=$get("Anounce_List");
        var ss
=o.innerHTML;
        
if(result==null||result.rows==null)
        
{
            window.close();
        }

        
else
        
{
                var valstr
="";
                
for(var i=0;i<result.rows.length;i++)
                
{
                    valstr
+=String.format("<img src='Images/Arrow1.gif' width='7' height='7' align='absmiddle'>&nbsp;<a href="javascript:WOTurnToUrl('Anounce_Menu.aspx','Anounce_Main.aspx?id={0}');">{1}</a><br>",result.rows[i].A_Id,result.rows[i].A_Title);
                }

                
if(ss!=valstr)
                
{
                    o.innerHTML
=valstr;
                }

                flag
=true;
                document.body.focus();
         }

    }

    function onFailed(error) 
{    
        
// 取得异常信息
        var stackTrace = error.get_stackTrace();
        var message 
= error.get_message();
        var statusCode 
= error.get_statusCode();
        var exceptionType 
= error.get_exceptionType();
        var timeout 
= error.get_timedOut();
       
        
// 显示异常信息
        $get("Anounce_List").innerHTML = 
            
"<strong>Stack Trace: </strong>" +  stackTrace + "<br/>" +
            
"<strong>Service Error: </strong>" + message + "<br/>" +
            
"<strong>Status Code: </strong>" + statusCode + "<br/>" +
            
"<strong>Exception Type: </strong>" + exceptionType + "<br/>" +
            
"<strong>Is Timeout: </strong>" + timeout;           
        
    }

</script>
 
<asp:ScriptManager ID="ScriptManager1" runat="server">
        
<Services>
            
<asp:ServiceReference Path="AnounceService.asmx" />
        
</Services>
    
</asp:ScriptManager>
    
<div id="Anounce_Uid" runat="server" class="disnone"></div>
    
<div class="Articletitle"><img src="Images/user.gif" width="16" height="16" hspace="2">您好!您有未查看的通知!</div>
    
    
<div id="Anounce_List" class="showlist">
    
</div>

AnounceService.asmx文件的后台代码如下:在类前需注明 [ScriptService]以及方法注明 [ScriptMethod]

[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo 
= WsiProfiles.BasicProfile1_1)]
[ScriptService]
public class AnounceService : System.Web.Services.WebService
{
    DAL_Anounce _anounce 
= new DAL_Anounce();

    [WebMethod]
    [ScriptMethod]
    
public DataTable GetAnounce(string uid)
    
{
        DataTable dt 
= new DataTable();
        dt 
= _anounce.GetAnounce(uid);
        
return dt;
    }


}
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值