2016-03-28 27 views
0

jQuery kullanarak çağıran bir JSON dosyam var. Min ve max fiyat alır jQuery UI-kaydırıcı kullandım. Gönder düğmesine tıkladığımda, o bölgede bulunan otellerin tüm isimlerini göstermelidir.JSON dosyasından veri alma

for (var i = 0; i < hotels.length; i++) { 
    if (hotels[i].price < min_price || hotels[i].price > max_price) { 
     continue; // skip hotel out of price range 
    } 
    var tr = document.createElement('tr'); 
    ... 
} 

Kodunuz fiyatı olarak dizi indeksleri kullanılarak ve sebepsiz bir iç içe döngüler kullanıyordu:

var params = { 
    checkIn: '20160505', 
    checkOut: '20160509', 
    location: 'mco' 
} 

$('#submitform').on('click', function() { 
    var min_price = $('#slider').slider("values", 0); 
    var max_price = $('#slider').slider("values", 1); 
    alert(min_price); 
    alert(max_price); 
    var urlBase = 'api/data.json'; 

    $.get(urlBase, params) 
    .done(function(hotels) { 
     // $.get(urlBase, params) 
     //  .done(function(hotels) { 
     var table = document.createElement("table"); 
     $('#data').append(table) 
     for (var i = min_price; i <= hotels.length; i++) { 
     for (var j = max_price; j <= hotels.length; j--) { 
      var tr = document.createElement("tr"); 
      var nametd = document.createElement("td"); 
      nametd.innerHTML = hotels[i].name 
      var pricetd = document.createElement("td"); 
      pricetd.innerHTML = hotels[i].ratesSummary.minPrice 
      var ratingtd = document.createElement("td") 
      ratingtd.innerHTML = hotels[i].starRating 
      var guesttd = document.createElement("td") 
      guesttd.innerHTML = hotels[i].overallGuestRating 
      table.appendChild(tr) 
      tr.appendChild(nametd); 
      tr.appendChild(pricetd); 
      tr.appendChild(ratingtd); 
      tr.appendChild(guesttd); 
     } 
     } 
     $('#data').append(table) 
    }); 
}); 

$(function() { 
    $("#slider").slider({ 
    range: true, 
    min: 35, 
    max: 165 
    }); 
}); 
+0

'$ ('# submitform'). On ('click' ...)' içinde olmalıdır $ (function() {...}) ' – Barmar

+0

'# submitForm' bir form için gönderme düğmesi ? Öyleyse, 'event.preventDefault()' ile varsayılan form gönderimini devre dışı bırakmanız gerekir. – Barmar

+0

hala onun hala bir isim onun –

cevap

0
için döngüler değiştirin

: İşte benim kodudur.

+0

gönderilecek kodu gerekiyor Şimdi json dosyası olsun, ama her şey getiriyor ve sadece değer kullanıcı değil –

+0

için sorar Çok teşekkürler, bitti. –