试图破解我遇到的这个小问题。
我正在使用parse.com来存储和检索数据,并且我有一个JSON对象正试图检索要附加到HTML的一部分
var tempObject = Parse.Object.extend("Dev");
var query = new Parse.Query(tempObject);
query.notEqualTo("objectId", "Dan Stemkoski");
query.find({
success: function(results) {
alert("Successfully retrieved " + results.length + " receipts");
for (var i = 0; i < results.length; i++) {
var object = results[i];
$("#receipts").html(object.get('receipt_title'));
console.log(object)
//alert(object.id + ' - ' + object.get('receipt_title'));`
我想显示的结果
<div id = receipts>
<div>
不幸的是,由于某种原因,我只得到一行,而不是我应该得到的十行。
我知道我应该以某种方式循环以获得结果,但是到目前为止,我的所有尝试都使我失败了。
在此先感谢您的帮助!
最佳答案
您需要将结果添加到html,因为现在您只需将前一个结果替换为下一个即可。代替
$("#receipts").html(object.get('receipt_title'));
尝试
var html = $("#receipts").html();
$("#receipts").html(html + object.get('receipt_title'));
另外,仅提及一下,如果您想提高效率,最好继续添加变量并只写入DOM一次。所以:
var html = "";
for(/* Do your for loop here, thats all correct*/){
/*Do everything the same apart from the $("#receipts").html() line*/
html += object.get('receipt_title');
}
$("#receipts").html(html);
修改DOM的次数越少越好。