Javascript jQuery-填写对象中缺少的周天数值
我想显示注册用户在注册期间填写的开放时间: 这是“Javascript jQuery-填写对象中缺少的周天数值,javascript,jquery,arrays,json,Javascript,Jquery,Arrays,Json,我想显示注册用户在注册期间填写的开放时间: 这是“值””&它以这种方式存储在数据库中: [ {"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:3
值”
”&它以这种方式存储在数据库中:
[
{"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)"}
]
这是我解析值的函数
:
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);
}
}
};
config.profile.core.parseAvailability=函数(值){
如果(值){
试一试{
var availabilityDays=JSON.parse(值);
$jq.每个(可用性天数,功能(索引,天数){
$jq(“#可用性”).append(“+day['daylab']+”+day['fromtime']+'-“+day['totime']+”);
});
}捕获(错误){
控制台错误(error);
}
}
};
这就是它在页面上的显示方式:
问题:
正如你可能看到的,星期三的日期(荷兰语“woensdag”介于“dinsdag”和“donderdag”之间)不见了,因为它不是故意填写的(可能在特定的一天关闭)。因为那天没有存储,所以我不能显示它
我如何用空值显示缺失的日期?与其循环查看已有数据,不如循环查看所需数据,然后显示与之匹配的数据
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>');
}
var-days=['Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag','Zondag'];
var availabilityDays=JSON.parse(值);
对于(var天数){
var details=availabilityDays.find(函数(细节){
返回detail.day==天;
});
var detailsText='';
若有(详情){
detailsText=详细信息['fromtime']+'-'+详细信息['totime']
}
$jq(“#可用性”)。追加(“”+day+“”+detailsText+“”);
}
与其循环你所拥有的数据,不如循环你想要的数据,然后显示与之匹配的内容
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>');
}
var-days=['Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag','Zondag'];
var availabilityDays=JSON.parse(值);
对于(var天数){
var details=availabilityDays.find(函数(细节){
返回detail.day==天;
});
var detailsText='';
若有(详情){
detailsText=详细信息['fromtime']+'-'+详细信息['totime']
}
$jq(“#可用性”)。追加(“”+day+“”+detailsText+“”);
}