微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ajax与ashx异步请求的简单案例

Ajax与ashx异步请求的简单案例:

前台页面(aspx):

<!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>
    <script src="js/jquery-1.5.1.js" type="text/javascript"></script>
    <script type="text/javascript">
        function gettext() {
            var intxt = $("#intxt").val();
            $.ajax({
                type: "POST",cache: false,url: 'OutText.ashx',data: { InText: intxt },dataType: "text",beforeSend: function () { },success: function (data) {
                    var outtext = document.getElementById("<%=outtxt.ClientID %>");
                    outtext.innerHTML = data;
                },error: function (XmlHttpRequest,textStatus,errorThrown) {
                    alert(XmlHttpRequest.responseText);
                }
            });
        }            
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="intxt" type="text" size="20" onblur="gettext()"/>
        <asp:Label ID="outtxt" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>

type: 传递方式。
cache:是否使用缓存。

url:接收的URL地址

data:传递参数。

datatype:传递参数的格式。

beforeSend:局部事件,请求开始时触发。

success:请求成功事件。

error:请求失败事件。

下面是OutText.ashx文件

<%@ WebHandler Language="C#" Class="OutText" %>

using System;
using System.Web;

public class OutText : IHttpHandler {
    
    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";
        HttpRequest Request = context.Request;
        string intxt = context.Request["InText"].ToString();
        context.Response.Write(intxt);
        context.Response.End();
    }

    public bool IsReusable {
        get {
            return false;
        }
    }
}

好了!一个简单的Ajax异步请求就完成了。如果要与数据库交互的话,可以在ashx文件里面调用其他操作类。

原文地址:https://www.jb51.cc/ajax/164037.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐