2012-05-21 12 views
7

में सभी आइटम प्रदर्शित करें मैं जेसन के साथ काम करने की कोशिश कर रहा हूं और मुझे लगभग वही चाहिए जो मुझे चाहिए। मुझे प्रदर्शित करने के लिए सही जानकारी मिल रही है, लेकिन मुझे एक सरणी के प्रत्येक आइटम को एक चर में पास करना होगा और फिर चर को मुद्रित करना होगा। मैं प्रत्येक सरणी में सभी वस्तुओं को प्रदर्शित करना चाहता हूं। जिस जेसन डेटा के साथ मैं काम कर रहा हूं वह एक चालान ऐप (www.curdbee.com) से है और मैं क्लाइंट के लिए प्रत्येक चालान दिखाने की कोशिश कर रहा हूं। जो डेटा मैं दिखाना चाहता हूं वह प्रत्येक पंक्ति वस्तु, रेखा वस्तु मूल्य और कुल राशि है।एक जेसन सरणी

$(document).ready(function() { 


    $.getJSON('https://nspirelab.curdbee.com/invoices.json?api_token=__token__', function(data){ 
     $.each(data, function(index, item){ 
      var total = item.invoice.total_billed; 
      var lineItemName1 = item.invoice.line_items[0].name_and_description; 
      var lineItemName2 = item.invoice.line_items[1].name_and_description; 
      var lineItemPrice1 = item.invoice.line_items[0].price; 
      var lineItemPrice2 = item.invoice.line_items[1].price; 

      $('#results').append('<div class="lineItem"><ul><li>' + lineItemName1 + lineItemPrice1 + '</li><li>' + lineItemName2 + lineItemPrice2 + '</li><li>' + total + '</li></ul></div>'); 
     }); 

    }); 

}); 
+1

से अपने API दिखा रहा है। – jmort253

+0

फिर भी, यह अभी भी डेटा डंप में दिखाई दे सकता है, यहां कुछ भी वास्तव में कभी भी हटाया नहीं गया है। मैं दृढ़ता से सुरक्षित होने के लिए, एक नया टोकन प्राप्त करने की सलाह देता हूं :) – jmort253

+4

धन्यवाद धन्यवाद! मुझे बस सुरक्षित होने के लिए एक नया टोकन मिला। – user715564

उत्तर

5

एक नेस्टेड पाश (या, jQuery में, एक नेस्टेड $.each()) काम करेगा:

$.getJSON('https://nspirelab.curdbee.com/invoices.json?api_token=&client=104929', function(data){ 
    $.each(data, function(index, item){ 
     // create an empty ul (initially disconnected from the DOM) 
     var $ul = $("<ul/>"); 

     // iterate over the line items 
     $.each(item.invoice.line_items, function(i, lineItem) { 
     // create an li element with the line details and append 
     // it to the ul 
     $ul.append($("<li/>").html(lineItem.name_and_description + lineItem.price)); 
     }); 

    // add the totals to the end of the ul 
    $ul.append($("<li/>").html(item.invoice.total_billed)); 

    // create a new div, append the ul to it, and append the div to results 
    $('#results').append($('<div class="lineItem"/>').append($ul)); 
    }); 
}); 
0

वहाँ पुस्तकालयों में से एक हास्यास्पद संख्या इस आसान तरह बातें करने के लिए कर रहे हैं: यहाँ मेरी कोड है। यह देखने के लिए कि आप क्या खो रहे हैं और विभिन्न पुस्तकालयों के बारे में जानने के लिए "जावास्क्रिप्ट टेम्पलेट्स" की खोज करें, इसके लिए आप इनमें से चुन सकते हैं।

+0

ठीक है धन्यवाद। मैं जेएस/jquery/json के लिए नया हूँ इसलिए मैं निश्चित रूप से जावास्क्रिप्ट टेम्पलेट्स पर एक नज़र डालेगा। – user715564

+0

ठंडा। जब आप इसमें खोदते हैं तो अभिभूत महसूस न करें ... यह वास्तव में काफी बेतुका है कि कितने लोगों ने खुद को सोचा है "अरे, आप जानते हैं कि क्या जरूरत है? एक और जेएस टेम्पलेटिंग लाइब्रेरी। मैं आज इसे बनाउंगा"। सामान्य उपयोग के लिए, वे सभी क्षेत्र बहुत समान हैं इसलिए सही चुनने पर तनाव न करें –

0

यदि मैं आपका प्रश्न ठीक से समझ गया, तो मुझे लगता है कि आप जो खोज रहे हैं वह कुछ प्रकार की पुनरावृत्ति तंत्र है, underscore.js आज़माएं।

संबंधित मुद्दे