2017-02-13 41 views
0

如何使用response.hotelList[i].lowRate對價格降序進行排序。如何使用Expedia API將價格從高到低排序

代碼等給出:

success: function (response) { 
     var bil = 1; 
     var hotel_size = response.hotelList.length; 

     $('#listData').append('<tr><td> Bil </td><td> Image </td><td> Hotel Name </td><td> Hotel Star Rating </td><td> Hotel Description </td><td> Price </td></tr>'); 
     for (var i =0; i<hotel_size; i++) { 
      //alert(response.hotelList[i].lowRate); 
      for (var i =0; i <= response.hotelList[i].lowRate i++) { 

      $('#listData').append('<tr><td>'+bil+'</td><td><img src="http://media.expedia.com'+response.hotelList[i].thumbnailUrl+'" style="width:100px;height:100px;"/></td><td>'+response.hotelList[i].name+'</td><td>'+ response.hotelList[i].hotelStarRating +'</td><td>'+response.hotelList[i].shortDescription+'</td><td>'+response.hotelList[i].lowRate+'</td></tr>'); 
      bil++; 
     } 
     } 
    }, 
+1

您需要使用比較器函數在注入DOM之前對列表進行排序。也可能在API中支持使用過濾器並以正確的順序返回列表。 –

+0

對不起,先生/女士,我是新的編碼。我希望你可以在js中給一些代碼。謝謝你的好意。對此,我真的非常感激。 –

回答

0

您應該創建使用類似酒店的排序列表:

var hotels  = response.hotelList; 
var sortedHotels = hotels.sort(function(a, b) { 
    return b.lowRate - a.lowRate; 
}) 

然後通過排序列表中有你的for循環迭代,並添加HTML元素。

for (var i =0; i <= sortedHotels; i++) { 
    ... 
} 
+0

好的,先生,謝謝。還有一件事,我們如何通過定製圖像來顯示酒店的詳細信息?即時申請你的好意 –

相關問題