关于ASP.NET下,JQuery+AJAX使用JSON返回数据的总结

      昨天第一次开始使用JQuery框架,并用其AJAX方法练习了一个最简单的例子。下班前想使用一下JSON来传输数据。在网上查找资料后,整理如下:

      ASP.NET 3.5已支持JSON了,在其扩展中System.Web.Extensions.dll。

      using System.Web.Script.Serialization;首先引用该命名空间!该命名空间内的Serialize()方法可以实现将数据对象序列化为JSON格式。

      举例,如果我现在有个实体类Object 或数组 arrayinfo 需要序列化为JSON格式,那么只需要调用Serialize()方法即可。伪代码如下:

      using System.Web.Script.Serialization;

 

      JavaScriptSerializer serializer = new JavaScriptSerializer();

      string jsonStr = serializer.Serialize(Object);

      jsonStr内的就是已经序列化好了的数据。直接返回就可以了。JQuery接到返回的数据后可以直接以msg[0].name来访问里面的属性值。

 

      现将部分代码贴出:

      AJAX请求页面 tagmanagement.aspx

      <script type="text/javascript" language="javascript">
        $(document).ready(function() {
            $("#btn_search").click(function() {
                $.ajax({
                    url: "processpage.aspx",
                    type: "GET",
                    dataType: "json",
                    data: "txt_search=" + escape($("#txt_search").val()),
                    success: function(data) {
                        alert(data[0].tag_name+"---"+data[0].count);
                    },
                    error: function() { alert("O No~~~"); }
                });
            });
        });
    </script>

 

      Ajax响应处理页面 processpage.aspx.cs

      using System.Web.Script.Serialization;
using ModelGroup.Model;

public partial class Admin_ProcessPage : System.Web.UI.Page
{
    JavaScriptSerializer serializer = new JavaScriptSerializer();
    protected void Page_Load(object sender, EventArgs e)
    {
        string name = Request.QueryString["txt_search"].ToString();
        if (name.Equals("aaa")) {
            List<zen_tag> zentag = new List<zen_tag>();
            zentag.Add(new zen_tag {
                tag_id = 1,
                tag_name = "Nicholas",
                url_show = "Nicholas",
                first_letter = "N",
                count = 500,
                create_time = "2009-10-10 10:10"
            });
            string jsonStr = serializer.Serialize(zentag);
            Response.Clear();
            Response.Write(jsonStr);
            Response.End();
        }
    }
}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值