7

だから私は最近jQueryでajaxを使い始めたばかりです。応答から何を返したいかを制限または指定することは可能かどうか疑問に思います。

つまり、次のようなものがあり、100人のうち最初の3人または最後の3人だけを取得したいとします。

$.ajax({
   type: "GET",
   url: "/people"
   dataType: "json",
   success: function(data) {
      // Do some awesome stuff.
   }
});

今、私はあなたがpasとオプションのデータオブジェクトができることを知っています。このデータオブジェクトを使用して、必要な応答を制限または指定できますか?

助けてくれてありがとう!

4

6 に答える 6

10

サーバー側でフィルターを実行する必要があります。パラメータuseを渡しますdata

$.ajax({
   type: "GET",
   url: "/people",
   data: {limit: 3, order: 'desc'}, 
   dataType: "json",
   success: function(data) {
      // Do some awesome stuff.
   }
});

limit次に、サーバー側で、とに基づいて応答を返しますorder

于 2012-10-20T03:34:52.553 に答える
3

はい、'data' 引数を使用して、どのレコードを返すかを示すパラメータをサーバーに渡します。私は通常、ページネーションでこれを行い、1 ~ 10 行または 21 ~ 30 行を取得します。これには、サーバー ロジックが、パラメーター値から正しい量のデータを返す必要があることを理解する必要があります。それを制御できない場合 (サーバーは常に 100 個のレコードを送信します)、成功ハンドラーで必要な 3 つのレコードを手動で引き出します。

$.ajax({
 type: "GET",
 url: "/people"
 dataType: "json",
 data: {
   minRow: 1,
   maxRow: 10
 },
 success: function(data) {
    // Do some awesome stuff.
 }
});
于 2012-10-20T03:37:12.487 に答える
2

応答タイプによっては、サーバー側で結果を制限する必要があります。応答がJSONの場合は、forループを作成して、3番目の結果で停止させることができます。応答サイズを小さくするので、個人的にサーバー側に行きます。

于 2012-10-20T03:34:34.600 に答える
2

これをクライアント側で行うことを選択している場合:

成功のコールバックの最初の引数は、サーバーから返されたデータです。

サーバーから返されるデータのタイプは JSON であるため、JavaScript オブジェクトが返されます。JavaScript で通常行うように、最初または最後の 3 人にアクセスします。

たとえば、サーバーからの応答が次の形式の場合:

{ 
    "people" : [
        { name: "Foo" },
        { name: "Bar" },
        { name: "Baz" },
        // and so on...
    ]
} 

次のように、最初または最後の 3 人にアクセスできます。

$.ajax({
   type: "GET",
   url: "/people"
   dataType: "json",
   success: function(data) {
      // Assuming there are 100 people in the "people" array
      // The first three people 
      console.log( data.people[0] ); // "Foo"
      console.log( data.people[1] ); // "Bar"
      console.log( data.people[2] ); // "Baz"

   } 
});
于 2012-10-20T03:52:35.760 に答える
1

よくわかれば……。

私は通常 ajax リクエストでデータを送信します。あなたの場合、私はこれを送ります:

 url:'addres'
 data: 'from='+value_from+'&to='+to;
 type:'post'

サーバー側では、行き来、またはそのようなもの(必要に応じて金額、または別のオプション)を取得し、必要な結果で応答できます

于 2012-10-20T03:38:05.217 に答える