2012-02-05 27 views
1

私はjQueryのgetJSON関数は与えていない、警告

$(document).ready(function() { 
    LoadData(); 
}); 


function LoadData() { 

    $('#SubmitButton').click(function() { 

     $.getJSON('CustomerJASON.aspx', { id: 5 }, function (data) { 
      alert(data.FirstName); 

     }); 
    }); 

で書くjQueryのgetjason機能を使用してこのページおよびコードを呼び出す

protected void Page_Load(object sender, EventArgs e) 
    { 
     //MakeJasonCustomer(); 
     Request.ContentType = "application/json"; 
     var customer = new Customer() 
     { 
      ID = int.Parse(Request["id"]), 
      FirstName = "Haseeb", 
      LastName = "Khan" 
     }; 
     var jsonSerializer = new DataContractJsonSerializer(typeof(Customer)); 
     jsonSerializer.WriteObject(Response.OutputStream, customer); 
    } 

のようなコードを持っているページのコールCustomerJASON.aspxを持っています}

ですが、問題は私がgetJSON関数から警告を受け取ることができないことです。plzは私が完全に立ち往生しているのを助けます。

答えて

0

console.logまたはconsole.dirをデータのコードに追加して、実際にオブジェクトであることを確認してください。呼び出されていないか、data.firstNameが正しくないとjavascriptが正しくない

console.dir(data); 
alert(data.firstName); 

放火犯でチェックまたは戻り値の代わりに、ページのLoadイベントを処理するために、あなたは「CustomerJASON.aspx」で別のWebMethod属性を追加することができます

0

示されているもののデータ別のツールを失敗

[System.Web.Services.WebMethod] 
public static string LoadData() { //Code Here } 

とJavascriptコードの:AJAXリクエストが失敗した場合

$.getJSON('CustomerJASON.aspx/LoadData', { id: 5 }, function (data) 
0

$.getJSON()は何もしません。 デベロッパーコンソール(F12、ネットワークタブ)を開き、応答を確認します。

また、エラーハンドラを追加して、何が起きているかを確認してください。

$.getJSON('CustomerJASON.aspx', { id: 5 }, function (data) { 
    alert(data.FirstName); 
}).error(function(jqXHR, textStatus, errorThrown) { 
    // Inspect the values of jqXHR, textStatus, errorThrown here. 
}); 
+0

私の応答はすべて良いですが、私のjsonは呼び出されたページに書かれていますが、アラートが表示されません –

関連する問題