django व्यू से जेसन के रूप में लौटाए गए डेटा से तत्वों को पुनर्प्राप्त करना

मेरे django दृश्य में, मैं कुछ खोज परिणामों को json में परिवर्तित करने के लिए simplejson का उपयोग कर रहा हूं

vals = [('supposed to be a toaster.', 8),('we can do more than one thing.',14),("we could make a bicycle.",51)]

result={'results':vals}

serialized = simplejson.dumps(result)

serialized=>

{"msg": "success!.",  "results": [["supposed to be a toaster.", 8], ["we can do more than one thing.", 14], [" we could make a bicycle.", 51]]}

मैं इस क्रमबद्ध डेटा को जावास्क्रिप्ट फ़ंक्शन पर भेज सकता हूं

return HttpResponse(serialized, mimetype="application/json")

मेरे जावास्क्रिप्ट फ़ंक्शन (jquery का उपयोग करके) में, मैं डेटा को पुनर्प्राप्त कर सकता हूं

var data = $.parseJSON(res.responseText);
var results = data['results']

मैं परिणाम को निम्नलिखित प्रारूप में दिखाना चाहता हूं

8  -- supposed to be a toaster. 
14 -- we can do more than one thing
51 -- we could make a bicycle

मैं जावास्क्रिप्ट में यह कैसे कर सकता हूं? जावास्क्रिप्ट चर परिणाम में एस है

supposed to be a toaster.,8,we can do more than one thing.,14,we could make a bicycle.,51,

क्या मुझे वस्तुओं को अलग करने के लिए regex का उपयोग करना होगा? या क्या कोई बेहतर समाधान है? रेगेक्स मुश्किल का उपयोग क्या करता है, वह है तारों में कभी-कभी संख्याएं हो सकती हैं।

संपादित

प्रियंका और एलेक्सी 28 द्वारा दिए गए उत्तरों के लिए धन्यवाद, मैंने कोशिश की

for(var item in results) {
    var time = results[item][1];
    console.log('time='+time);
    var resStr =results[item][0];
    console.log('resStr='+resStr);
    formatedResult += time+ " --- " + resStr+'
'; } $('#showresults').html(formatedResult);
1
जोड़ा संपादित
विचारों: 1
धन्यवाद प्रियंका, यह काम करेगा
जोड़ा लेखक damon, स्रोत
मुझे लगता है कि आप लूप के लिए सरल जावास्क्रिप्ट का उपयोग करके डेटा ['परिणाम'] पर फिर से सक्रिय कर सकते हैं। कंसोल "डेटा" .. और देखें कि फायरबग में आप क्या देखते हैं ...
जोड़ा लेखक Priyank Patel, स्रोत

1 उत्तर

परिवर्तनीय डेटा में सरणी होगी, ताकि आप यह कर सकें:

var formatedResult = "";
for(var i = 0; i < data.length; i++) {
    var item = data[i];
    formatedResult += item[1] + " --- " + item[0];
}
// Set html for you <div id="resultOutput"></div>:
jQuery("div#resultOutput").html(formatedResult);
0
जोड़ा
हाय, मैंने आपके समाधान को थोड़ा सा संशोधित किया और इसे काम कर लिया .. कृपया मेरा संपादित प्रश्न देखें
जोड़ा लेखक damon, स्रोत