asp.net调用jqueryajax

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
    <script>
        
        function Ajax1Data(data) {
            alert(data[0].Name);
        }
        $(function () {
            $("#btn_Ajax1").click(function () {
                $.ajax({
                    type: "Get",//默认,后台取参数:Request.Params[""]
                    url: "btnAjaxGet.ashx",//此处名字后不能带数字,不然就调不到,奇怪
                    //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字   
                    data: { "value1": '万事如意', "value2": $('#txtCs').val(), "value3": '牛牛牛GET' },
                    //contentType: "application/json; charset=utf-8",//加不加这个设置,都能用Request.Params[""]获取参数
                    dataType: "json",
                    success: function (data) {
                        t = "<table border='1'>";
                        $.each(data, function (i, item) {
                            t += "<tr>";
                            t += "<td>" + item.ID + "</td>";
                            t += "<td>" + item.Name + "</td>";
                            t += "<td>" + item.Address + "</td>";
                            t += "</tr>";
                        })
                        t += "</table>";
                        $("#show").html(t);
                    },
                    error: function (err) {
                        alert(err);
                    }
                });
                //禁用按钮的提交   
                return false;
            });

            $("#btn_Ajax2").click(function () {
                $.post("btnAjaxPostSimple.ashx",
                    {
                        "FunName": "参数", "Value": $('#txtCs').val()
                    },
                    function (data) {
                        debugger;
                        data = jQuery.parseJSON(data);//将字符串转为json对象

                        t = "<table border='1'>";
                        $.each(data, function (i, item) {
                            t += "<tr>";
                            t += "<td>" + item.ID + "</td>";
                            t += "<td>" + item.Name + "</td>";
                            t += "<td>" + item.Address + "</td>";
                            t += "</tr>";
                        })
                        t += "</table>";
                        $("#show").html(t);

                });
                //禁用按钮的提交   
                return false;
            });

            $("#btn_Ajax3").click(function () {
            $.ajax({
                type: "Post",
                url: "Ajax.aspx/getValueByAjaxByParms",
                //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字   
                data: "{'str':'我是','str2':'" + $('#txtCs').val() + "','str3':'是不是?'}",//data后参数要带双引号
                contentType: "application/json; charset=utf-8",//此处必须设置
                dataType: "json",
                success: function (data) {
                    //返回的数据用data.d获取内容   
                    alert(data.d);
                    data = jQuery.parseJSON(data.d);//将字符串转为json对象

                    t = "<table border='1'>";
                    $.each(data, function (i, item) {
                        t += "<tr>";
                        t += "<td>" + item.ID + "</td>";
                        t += "<td>" + item.Name + "</td>";
                        t += "<td>" + item.Address + "</td>";
                        t += "</tr>";
                    })
                    t += "</table>";
                    $("#show").html(t);
                },
                error: function (err) {
                    alert(err);
                }
            });
            return false;
            });

            $("#btn_Ajax").click(function () {
                $.ajax({
                    type: "post",
                    url: "AjaxHandler.ashx",
                    data: { "value1": '万事如意', "value2": $('#txtCs').val(), "value3": '牛牛牛POST' },             //参数要对应
                    //contentType: "application/json; charset=utf-8",//此处不用设置,不然在post方式下后台无法取到值
                    dataType: "json",
                    success: function (data) {
                        t = "<table border='1'>";
                        $.each(data, function (i, item) {
                            t += "<tr>";
                            t += "<td>" + item.ID + "</td>";
                            t += "<td>" + item.Name + "</td>";
                            t += "<td>" + item.Address + "</td>";
                            t += "</tr>";
                        })
                        t += "</table>";
                        $("#show").html(t);
                    }
                });
                return false;
            });
        })
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input id="txtCs" type="text" />
        <input value="Post" type="button" id="btn_Ajax" />
        <input value="Get" type="button" id="btn_Ajax1"/>
        <input value="$.post" type="button" id="btn_Ajax2" />
        <input value="WebMoth" type="button" id="btn_Ajax3" />
        
    </div>
        <div id="show">
        </div>
    </form>
</body>
</html>
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace OpenCloseEvent
{
    public partial class Ajax : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        //带参数
        [WebMethod]
        public static string getValueByAjaxByParms(string str, string str2, string str3)
        {
            DataTable dt = new DataTable();           
            
            dt.TableName = "mytablename";
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Address", typeof(string));

            DataRow drNew = dt.NewRow();
            drNew["ID"] = 0;
            drNew["Name"] = "传递参数";
            drNew["Address"] = str + str2 + str3;
            dt.Rows.Add(drNew);
            for (int i = 0; i < 5; i++)
            {
                DataRow dr = dt.NewRow();
                dr["ID"] = i.ToString();
                dr["Name"] = "JSON" + i.ToString();
                dr["Address"] = "中国-北京-海淀" + i.ToString() + "号";
                dt.Rows.Add(dr);
            }
            string strss = JsonConvert.SerializeObject(dt);
            return strss;           
        }

        [WebMethod]
        public static string GetData()
        {

            DataTable dt = new DataTable();
            dt.TableName = "mytablename";
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Address", typeof(string));
            for (int i = 0; i < 5; i++)
            {
                DataRow dr = dt.NewRow();
                dr["ID"] = i.ToString();
                dr["Name"] = "JSON" + i.ToString();
                dr["Address"] = "中国-北京-海淀" + i.ToString() + "号";
                dt.Rows.Add(dr);
            }
            string strss = JsonConvert.SerializeObject(dt);
            return strss;
        }
    }
}




/// <summary>
    /// AjaxHandler 的摘要说明
    /// </summary>
    public class AjaxHandler : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            string value1 = context.Request.Form["value1"] ?? "";
            string value2 = context.Request.Form["value2"] ?? "";
            string value3 = context.Request.Form["value3"] ?? "";

            value1 = context.Request.Params["value1"] ?? "";
            value2 = context.Request.Params["value2"] ?? "";
            value3 = context.Request.Params["value3"] ?? "";

            DataTable dt = new DataTable();
            dt.TableName = "mytablename";
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Address", typeof(string));
            DataRow drNew = dt.NewRow();
            drNew["ID"] = 0;
            drNew["Name"] = "传递参数";
            drNew["Address"] = value1+value2+value3;
            dt.Rows.Add(drNew);
            for (int i = 1; i < 5; i++)
            {
                DataRow dr = dt.NewRow();
                dr["ID"] = i.ToString();
                dr["Name"] = "JSON" + i.ToString();
                dr["Address"] = "中国-北京-海淀" + i.ToString() + "号";
                dt.Rows.Add(dr);
            }
            
            string strss = JsonConvert.SerializeObject(dt);
            //strss = "[{\"demoData\":\"This Is The JSON Data\"}]";
            context.Response.Charset = "UTF-8";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;
            context.Response.Expires = 0;
            context.Response.Write(strss);
            context.Response.End();
        }

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

/// <summary>
    /// btnAjaxGet 的摘要说明
    /// </summary>
    public class btnAjaxGet : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            string value1 = context.Request.Form["value1"] ?? "";
            string value2 = context.Request.Form["value2"] ?? "";
            string value3 = context.Request.Form["value3"] ?? "";

            value1 = context.Request.Params["value1"] ?? "";
            value2 = context.Request.Params["value2"] ?? "";
            value3 = context.Request.Params["value3"] ?? "";


            DataTable dt = new DataTable();
            dt.TableName = "mytablename";
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Address", typeof(string));
            DataRow drNew = dt.NewRow();
            drNew["ID"] = 0;
            drNew["Name"] = "传递参数";
            drNew["Address"] = value1 + value2 + value3;
            dt.Rows.Add(drNew);
            for (int i = 1; i < 5; i++)
            {
                DataRow dr = dt.NewRow();
                dr["ID"] = i.ToString();
                dr["Name"] = "JSON" + i.ToString();
                dr["Address"] = "中国-北京-海淀" + i.ToString() + "号";
                dt.Rows.Add(dr);
            }

            string strss = JsonConvert.SerializeObject(dt);
            //strss = "[{\"demoData\":\"This Is The JSON Data\"}]";
            context.Response.Charset = "UTF-8";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;
            context.Response.Expires = 0;
            context.Response.Write(strss);
            context.Response.End();
        }

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

/// <summary>
    /// btnAjaxPostSimple 的摘要说明
    /// </summary>
    public class btnAjaxPostSimple : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            string value1 = context.Request.Form["FunName"] ?? "";
            string value2 = context.Request.Form["Value"] ?? "";

            value1 = context.Request.Params["FunName"] ?? "";
            value2 = context.Request.Params["Value"] ?? "";
            


            DataTable dt = new DataTable();
            dt.TableName = "mytablename";
            dt.Columns.Add("ID", typeof(Int32));
            dt.Columns.Add("Name", typeof(string));
            dt.Columns.Add("Address", typeof(string));
            DataRow drNew = dt.NewRow();
            drNew["ID"] = 0;
            drNew["Name"] = value1;
            drNew["Address"] = value2;
            dt.Rows.Add(drNew);
            for (int i = 1; i < 5; i++)
            {
                DataRow dr = dt.NewRow();
                dr["ID"] = i.ToString();
                dr["Name"] = "JSON" + i.ToString();
                dr["Address"] = "中国-北京-海淀" + i.ToString() + "号";
                dt.Rows.Add(dr);
            }

            string strss = JsonConvert.SerializeObject(dt);
            //strss = "[{\"demoData\":\"This Is The JSON Data\"}]";
            context.Response.Charset = "UTF-8";
            context.Response.ContentEncoding = System.Text.Encoding.UTF8;
            context.Response.Expires = 0;
            context.Response.Write(strss);
            context.Response.End();
        }

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


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值