2016-03-04 87 views
0

我想显示开口小时,一个注册用户的注册时填写在一周价值的缺失天填写:jQuery的 - 从对象

这是“value” &它以这种方式存储在DB:

[ 
{"day":"Maandag","daylabel":"Maandag","fromtime":"15:30","fromtimelabel":"3:30 pm","totime":"22:00","totimelabel":"10:00 pm"}, 
{"day":"Dinsdag","daylabel":"Dinsdag","fromtime":"15:30","fromtimelabel":"3:30 pm","totime":"22:00","totimelabel":"10:00 pm"}, 
{"day":"Donderdag","daylabel":"Donderdag","fromtime":"15:30","fromtimelabel":"3:30 pm","totime":"22:00","totimelabel":"10:00 pm"}, 
{"day":"Vrijdag","daylabel":"Vrijdag","fromtime":"15:30","fromtimelabel":"3:30 pm","totime":"22:00","totimelabel":"10:00 pm"}, 
{"day":"Zaterdag","daylabel":"Zaterdag","fromtime":"09:30","fromtimelabel":"9:30 am","totime":"+00:00","totimelabel":"12:00 am (next day)"}, 
{"day":"Zondag","daylabel":"Zondag","fromtime":"09:30","fromtimelabel":"9:30 am","totime":"+00:00","totimelabel":"12:00 am (next day)"} 
] 

这是我的函数解析value

config.profile.core.parseAvailability = function(value){ 
    if(value){ 
    try { 
     var availabilityDays = JSON.parse(value); 
     $jq.each(availabilityDays, function(index, day) { 
      $jq('#availability').append('<div class="col-sm-5">'+day['daylabel']+'</div><div class="col-sm-7">'+day['fromtime']+' - '+day['totime']+'</div>'); 
     }); 
    } catch (error) { 
     console.error(error); 
    } 
    } 
}; 

这是它会显示在p的方式年龄:

enter image description here

问题:

正如你或许可以看到,周三(在 'dinsdag' & 'donderdag'之间的荷兰人 'woensdag' )当天丢失,因为它并非故意填充(可能会在特定的一天关闭)。因为那一天没有储存,我无法显示它。

我该如何显示缺少空白值的日子?

回答

2

而不是遍历数据你已经,环比数据,你然后显示什么与它匹配

var days = ['Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag']; 
var availabilityDays = JSON.parse(value); 

for (var day of days) { 
    var details = availabilityDays.find(function (detail) { 
     return detail.day == day; 
    }); 

    var detailsText = ''; 

    if (details) { 
     detailsText = details['fromtime']+' - '+details['totime'] 
    } 

    $jq('#availability').append('<div class="col-sm-5">'+day+'</div><div class="col-sm-7">' + detailsText + '</div>'); 
} 
+0

非常感谢你。 – Mark