Javascript呼叫.axd文档

本文详细介绍了如何在Insus.NET中创建一个实现IHttpHandler接口的类别,用于处理AXD文档调用,从而在客户端实现与AXD文档之间的交互。通过在Web配置文件中注册AXD文档,并在页面上设置按钮和文本框,用户可以输入内容并触发AXD文档的响应,展示了AXD文档在客户端交互中的应用。

axd文档与ashx文档有相似的功能。此博文中,Insus.NET演示如何在Javascript呼叫到axd文档。能呼叫到axd文档,当然也可以呼叫到ashx的,不过此次axd是主角。

在你的专案的App_Code中,创建一个类别,记得要实作IHttpHandler接口。 

ExpandedBlockStart.gif View Code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

///   <summary>
///  Summary description for InsusClass
///   </summary>
namespace Insus.NET
{
     public  class InsusClass : IHttpHandler
    {
         public InsusClass()
        {
             //
            
//  TODO: Add constructor logic here
            
//
        }

         public  bool IsReusable
        {
             get {  throw  new NotImplementedException(); }
        }

         public  void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType =  " text/Plain ";
             string parm = context.Request.Params[ " v "];
            context.Response.Write( " Hello,  " + parm);        
        }
    }
}

 

 然后,在web.config注册axd文档:

 

为了做一个演示,我们可以在.aspx放置一个TextBox和一个Button。这样用户可以在文本框中输入文字,点击铵钮可以呼叫到它。

ExpandedBlockStart.gif View Code
  < asp:TextBox  ID ="TextBoxName"  runat ="server" ></ asp:TextBox >
             < asp:Button  ID ="ButtonCall"  runat ="server"  Text ="Call"
                OnClientClick
="callAxd();"   />

 

在铵钮中使用了OnClientClick="callAxd();", 是客户端执行,可以直接Ctrl + C,Ctrl + V帖于head 即可。

ExpandedBlockStart.gif View Code
function callAxd() {
             var xhr =  new XMLHttpRequest();

            xhr.onreadystatechange =  function () {
                 if (xhr.readyState == 4 && xhr.status == 200) {
                    alert(xhr.responseText);
                }
            }

             var url = "i.axd?v=" + document.getElementById('<%=TextBoxName.ClientID%>').value;
            xhr.open("GET", url,  true);
            xhr.send();
        }

 

OK,我们运行一下:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值