2012-05-25 11 views
8

は、私はちょうどJSONを使ってGridViewのにJSONとデータバインディングを学習し始めているが、私はcontentTypeのとデータ型とデータが何であるかを理解することはできませんよ?のcontentTypeとデータ型とjQuery AJAXポスト内のデータとは何ですか?

私は、サーバーに設定されているコンテンツの種類を指定するMIMEコンテンツタイプにのcontentType referres

<script type="text/javascript"> 
$(document).ready(function() { 
    $.ajax({ 
     type: "POST", 
     contentType: "application/json; charset=utf-8", 
     url: "Gridview.aspx/BindDatatable", 
     data: "{}", 
     dataType: "json", 
     success: function (data) { 
      for (var i = 0; i < data.d.length; i++) { 
       $("#gvDetails").append("<tr><td>" + data.d[i].OfficeName + "</td><td>" + data.d[i].City + "</td><td>" + data.d[i].Country + "</td></tr>"); 
      } 
     }, 
     error: function (result) { 
      alert("Error"); 
     } 
    }); 
}); 
</script> 

答えて

14

............次のコードを使用していました。これは、FORMエンコードされたXML、JSON、その他多くのコンテンツタイプを識別することができます。サーバーは、コンテンツの処理方法を決定するのに役立ちます。

データ型は、データを処理する方法に関してjQueryのに役立ちます。 JSONを指定した場合、成功のハンドラに渡されたJSONデータではなく、文字列

の対象になるように、返されるデータが評価されるデータプロパティは、サーバーに渡されたデータのために使用されています。 Objectリテラルを渡した場合。 jQueryのは、どちらかのリクエストボディの一部として(タイプはポストがある場合)またはクエリ文字列の一部としてそれを渡しますJSONその後、返されたデータは次のように評価されるように、我々は、データ型を指定した場合

+1

Gud説明...データについて教えてください。 –

+1

私はそれがこの答えをほぼ一年だったけど、私はコンテンツの種類は、私がサーバーに送信しています何を定義して、データ型iは、サーバから取得しています何を定義していると思った疑いを持って、私を修正したりでご確認くださいどちらか私の考えは – Ali

+2

@Aliあなたの理解で正しいです。私は答えをより明確にしようとしました。コメントありがとう –

3

(タイプが取得された場合) Jsonと成功ハンドラに渡されたデータは文字列ではなくオブジェクトになります。例を見てください。

$.ajax({ 
     type: "POST", 
     url: "ProductWebService.asmx/GetProductDetails", 

    data: "{'productId':'" + productId + "'}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (response) { 
     var Product = response.d; 
     $("#spnProductId").html(Product.Id);strong text 
     $("#spnProductName").html(Product.Name); 
     $("#spnPrice").html(Product.Price); 
     $("#outputTable").show(); 
    }, 
    failure: function (msg) { 
     alert(msg); 
    } 
}); 
関連する問題