Jquery Ajax請求(2)

來源:互聯網
上載者:User

總結了一下了一下$.getJSON()一些應用,希望大家喜歡,首先我用的的是 Newtonsoft.Json.Net20.dll

添加引用Dll檔案就可以使用了,很方便的。

在jquery庫中,getJSON其實是調用的:Query.get(url, data, callback,
"json")

其中參數也是以k/v對格式發出。請求返回的可以看到:在服務端以Customer列表集合返回

現在來看一下事列:

件一個Common類

public class Customer
{
    public int Unid { get; set; }
    public string CustomerName { get; set; }
    public string Memo { get; set; }
    public string Other { get; set; }
}

在一般處理檔案(ashx)中寫一個如下方法Customer customer = new Customer 
       { Unid=1,CustomerName="宋江",Memo="天魁星",Other="黑三郎"};

string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(customer);

context.Response.Write(strJson);

在前台Jquery中載入調用ashx代碼
通過getJSON向ashx請求資料。返回的資料為JSON對象
$().ready(function() {
                $.getJSON("JqueryData2.ashx", function(data) {
                       alert(data.Memo);
                   });
            $.getJSON("JqueryData2.ashx", function(data) {
                var tt = "";
                $.each(data, function(k, v) {
                    tt += k + ":" + v + "<br/>";
                })
                $("#disHows").html(tt);
            });
        });

(二)ashx檔案,但返回的是實體集合

Customer customer = new Customer 
    { Unid=1,CustomerName="宋江",Memo="天魁星",Other="黑三郎"};

Customer customer2 = new Customer 
    { Unid = 2, CustomerName = "吳用", Memo = "天機星", Other = "智多星" };        

List<Customer> _list = new List<Customer>();
_list.Add(customer);
_list.Add(customer2);        

string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(_list);
context.Response.Write(strJson);

function GetCustomerList() {
    $.getJSON(
    "JqueryData2.ashx",
    function(data) {
        var tt = "";
        $.each(data, function(k, v) {
            $.each(v,function(kk, vv) {
                tt += kk + ":" + vv + "<br/>";
            });
        });
        $("#divmessage").html(tt);
    });
}

(三)請求aspx檔案中的CS

protected void Page_Load(object sender, EventArgs e)
{
   Customer customer = new Customer 
     { Unid = 1, CustomerName = "宋江", Memo = "天魁星", Other = "黑三郎" };

  string strJson = Newtonsoft.Json.JsonConvert.SerializeObject(customer);

  Response.Write(strJson);
}

·Aspx檔案

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Json_1.aspx.cs" 
  Inherits="webdata_Json_1" %>
主意:前台檔案只保留Page聲明,其它全部刪除

Jquery代碼function GetCustomer_Aspx() {
    $.getJSON(
    "webdata/Json_1.aspx",
    function(data) {
               var tt = "";
               $.each(data, function(k, v) {
                    tt += k + ":" + v + "<br/>";
                })
                $("#divmessage").html(tt);
    });
}

(四)請求文字檔

文字檔提供json字串,由$.getJSON得到json對象

·文字檔

{Unid:1,CustomerName:"宋江",Memo:"天魁星",Other:"黑三郎"}

文字檔提供json串,對於json的組成格式,對於這一實體json,會被忽略空行與空格

 function GetCustomer_txt() {    $.getJSON(
    "webdata/Json_1.txt",
    function(data) {
        var tt = "";
        $.each(data, function(k, v) {
            tt += k + ":" + v + "<br/>";
        })
        $("#divmessage").html(tt);
    });
}

解析的方法與ashx的解析相同

在Txt檔案中對於多行的格式如下:

常值內容:

[

{Unid:1,CustomerName:"宋江",Memo:"天魁星",Other:"黑三郎"},

{Unid:2,CustomerName:"吳用",Memo:"天機星",Other:"智多星"}

]

function GetCustomer_TxtList() {
    $.getJSON(
    "webdata/Json_1.txt",
    function(data) {
        var tt = "";
        $.each(data, function(k, v) {
            $.each(v, function(kk, vv) {
                tt += kk + ":" + vv + "<br/>";
            });
        });
        $("#divmessage").html(tt);
    });
}http://s.click.taobao.com/t_8?e=7HZ5x%2BOzdswsVvyc5Jts79Au1Q%3D%3D&p=mm_24156262_0_0
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.