2012-09-11 46 views
1

感謝這個網站,我現在有json數據從服務器返回,很好地填充我的網頁。如何根據每個item.id的NUM_PHOTOS增加爲.jpg加上前綴的數字?

返回的字段之一是NUM_PHOTOS。每個item.id至少有1張照片。

但實際的照片不在json數據中,它們位於diff目錄中,並且所有增量都以'item.id'+/1.jpg開頭,取決於該特定項目存在的NUM_PHOTOS

例如對於項目'20090',有5張照片,在一個單獨的目錄中爲:/20090/1.jpg, 20090/2.jpg, etc.,但是有多少照片。 我如何增加該前綴的.jpg根據所述NUM_PHOTOS每個item.id?

我已動態填充flexsider與所述第一3圖像爲每個「item.id」使用下面的代碼的數量的數量,但當然照片會有所不同,我被困在需要追加是在NUM_PHOTOS每個item.id.

$('.flexslider .slides').append('<li><img src="http://url/data/listing/pics/' + item.id  + '/1.jpg"></li>');   
$('.slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/' + item.id  + '/2.jpg"></li>'); 
$('.slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/' + item.id  + '/3.jpg"></li>'); 
} 

我嘗試了好幾種技術.jpg' S的前綴是什麼,但作爲一個總的初學者我需要一點點的手..

JS is: 
$('#detailsPage').live('pagebeforeshow', function(event) { 
    var id = getUrlVars()["id"]; 
    $.getJSON('http://www.url.co.nz/feeds/json_detail.php?id='+id, displayItem); 
    }); 
    function displayItem(data) { 
var listing = data.item; 

$('#id').text(listing.id + ', ' + listing.suburb + ', ' +listing.district); 
$('#Title').text(listing.title); 
$('#numberPhotos').text(listing.num_photos); 
$('#price').text('Price Approx: ' + '$' + listing.price); 

// how do i auto increment the .jpg according the 'num_photos' field returned from json? 
// ????? if (listing.num_photos???????) { 


$('.flexslider .slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/' +  listing.id + '/1.jpg"></li>'); 
$('.slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/' + listing.id  + '/2.jpg"></li>'); 
$('.slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/' + listing.id  + '/3.jpg"></li>'); 
} 

function getUrlVars() { 
var vars = [], hash; 
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); 
for(var i = 0; i < hashes.length; i++) 
{ 
    hash = hashes[i].split('='); 
    vars.push(hash[0]); 
    vars[hash[0]] = hash[1]; 
    } 
    return vars; 
} 
+0

請顯示迄今爲止您所使用的Json和腳本。 – mplungjan

+0

既然你有NUM_PHOTOS,爲什麼不循環? – janith

+0

for(var i = 0; i janith

回答

0

您必須計算JSON數據中的id的數量。

只是這行之前

var listing = data.item; 

一旦你算然後將循環這裏面下面的代碼它

for(i=0;i<counted_value;i++){ 
    var listing = data.item; 
    $('.slides').append('<li><img src="http://www.url.co.nz/data/listing/pics/'+ listing.id +'/2.jpg"></li>'); 
} 

如果你不知道怎麼算這樣先打印數據控制檯並檢查數據格式並嘗試在測試文件中打印計數