我目前正在设施预订系统。在预订设施的过程中,用户可以选择一个时段。当用户选择要预订的日期和设施时,进行ajax调用以检索所有可用时隙。返回的数据包括工作日和周末的时间段(是的,它们有不同的时间段)。
工作日和周末以及时间段放在一张桌子上。还有另一个功能可以检查所选日期是工作日还是周末。如果是前者,则会隐藏周末时段。如果是后者,反之亦然。
工作日的开放时间:08:00-21:00
周末的开放时间:08:30-17:30
要隐藏所述时段,请使用以下代码:
let wrapperCntr = 0;
async function wrapper () {
let cnt = wrapperCntr++;
console.time('wrapper' + cnt);
const response = await doWork();
console.timeEnd('wrapper' + cnt);
return response;
}
如果代码完美无缺,时间段将如下所示:
选择日期:2017年6月27日,星期二(工作日)
选择日期:2017年7月1日,星期六(周末)
然而,有时,代码不起作用。有时,显示的时间段将同时显示工作日和周末:
选择日期:2017年6月27日,星期二(工作日)
还必须注意,在显示时隙之前调用充满ajax请求的7-8个函数。隐藏"周末"的功能或者"工作日"行是第五个功能。
问题是,在向用户显示时间段之前,我能做些什么来确保隐藏行?
我很抱歉我无法显示更多代码,因为公司对这些东西非常敏感。
非常感谢任何帮助或建议。
答案 0 :(得分:1)
要隐藏的代码在填充时间表的代码之前运行,在将数据插入时间表并显示后将循环添加到回调。
答案 1 :(得分:0)
这可能不是问题的绝对答案,我宁愿建议做相反的事情。从问题描述我假设有一个ajax调用返回数据&函数触发后,隐藏不相关的行。由于DOM遍历
,会有一分钟的延迟可选地