2011-05-24 48 views
1

我試圖抓住從JSON我的結果。說我有一個20種水果,但只有果實類型3有結果price=free。我如何才能返回價格=免費的結果?返回從JSON條目只能使用特定的標誌

這裏就是即時通訊做返回的結果..

fruits.payload.entries[count].name 

我想有price=free

+0

你能發佈你所得到的JSON響應的代碼示例? – 2011-05-24 09:53:44

+0

不確定爲(;;){ 「__ SA」:1, 「有效載荷」:{ 「條目」:[{ 「名稱」:蘋果, 「價格」: 「免費」, 「文本」: 「蘋果」,「路徑「:」 apple.php」, 「照片」: 「」, 「其他」: 「」, 「DA」: 「1」, 「ID」:9} – kyle 2011-05-24 09:59:16

回答

0
$(results).filter(function(){ 
    return this.price == "free" 
}); 
+0

這是jQuery的? – kyle 2011-05-24 09:56:31

+0

是的。對不起,以爲你在使用它。如果不是,則可以使用數組語法循環結果集。 – 2011-05-24 12:32:03

0

如果您的談話不支持查詢服務的話,你將不得不對其進行過濾你的自我。

爲了完整這裏是無框架式的循環:

var i, len, a, freeOnly = [], item; 
a = fruits.payload.entries; 

for(i = 0, len = a.length; i < len; i ++){ 
    item = a[i]; 
    if(item.price === 'free'){ 
     freeOnly.push(item); 
    } 
} 

對於免費的項目名稱,你會怎麼做:

function freeItemNames(items){ 
    var i, len, freeNames = [], item; 


    for(i = 0, len = items.length; i < len; i ++){ 
     item = items[i]; 
     if(item.price === 'free'){ 
      freeNames.push(item.name); 
     } 
    } 
    return freeNames; 
} 

// call like this 
freeItemNames(fruits.payload.entries); 

// should output something like 
["Free fruit 1","Fruity two"] 
+0

謝謝!那麼如何以item.price = free返回這些名稱呢? – kyle 2011-05-24 10:31:59

+0

對不起,只是增加了一個功能中提取的name屬性另一個更完整的示例 – 2011-05-24 10:42:13

相關問題