gpt4 book ai didi

javascript - 比较和打印 Bootstrap 面板内的元素

转载 作者:行者123 更新时间:2023-12-03 03:45:11 24 4
gpt4 key购买 nike

我正在开发一个项目,从 API 中收集学校时间表的数据。这就是我为获取所需的所有必要数据而编写的代码;

var timetable = [];
var days = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday',
'Friday', 'Saturday'];



// Go through the data and pick specific information
for (var i = 0; i < json.reservations.length; i++) {
if (json.reservations[i].resources != null) {
for (var j = 0; j < json.reservations[i].resources.length; j++) {


var reservation = json.reservations[i];
var resource = json.reservations[i].resources[j];

// Get student group
if (resource.type === "student_group") {
if (timetable.indexOf("name")) {
var studentGroup = timetable.push(resource.name.bold() + "<br/>");
}
}

// Get scheduling group
if (resource.type === "scheduling_group") {
if (timetable.indexOf("name")) {
var schedulingGroup = timetable.push(resource.name + "<br/>")
}
}


// Get rooms
if (resource.type === "room") {
if (timetable.indexOf("code")) {
var room = timetable.push(resource.code.bold() + "<br/>" + "<br/>");
}
}
}
}

// Get subject
if (reservation != null) {
if (timetable.indexOf("subject")) {
var subject = timetable.push("<br/>" + reservation.subject.bold() + "<br/>");
}
}

// Day name (Mon, Tue, Wed...)
var day = new Date(reservation.startDate);
var date = timetable.push(days[day.getDay()].bold() + "<br/>");

// Starting timestamp
if (reservation != null) {
var start = reservation.startDate;
var startStr = start.split("-").join('/').slice(0, 10) + "<br/>" + start.slice(11, 16);
lukkari.push(startStr + " - ");
}

// Ending timestamp
if (reservation != null) {
var end = reservation.endDate;
var endStr = end.slice(11, 16);
timetable.push(endStr + "<br/> <br/>");
}

var line = timetable.push("_______________________________<br/>");

// Print
document.getElementById("demo").innerHTML = timetable.join("");

这是将数据打印到 timetable 数组中的输出;

A440.2   

KL25AB10403-3001

Monday
2017/01/16
10:00 - 13:00

_______________________________


A440.4

KL04DVTT04-3002

Monday
2017/01/16
13:15 - 16:00

_______________________________


A320.2

KC00AKO10-3007

Tuesday
2017/01/17
09:00 - 11:45

_______________________________


A420.4

KC00AMT1010-3010

Tuesday
2017/01/17
12:15 - 14:00

_______________________________


A420.4

KC00AMT1010-3010

Wednesday
2017/01/18
08:00 - 10:45

_______________________________


A350.3

KL04BTTIVE1-3001

Wednesday
2017/01/18
11:00 - 13:00

_______________________________


A440.4

KL04DVTT04-3002

Wednesday
2017/01/18
13:15 - 15:00

_______________________________


A440.2

KL25AB10403-3001

Thursday
2017/01/19
08:00 - 09:45

_______________________________


A320.2

KC00AKO10-3007

Thursday
2017/01/19
10:00 - 11:45

但我不希望这些信息只存在于数组中。我正在考虑将每天(周一、周二等)的数据打印到各自的列中。

在这里,我正在考虑使用折叠 Bootstrap 面板,每个面板都有自己各自的日期名称,例如。周一、周二...

是否有任何快速有效的解决方案可以将我收集的数据中的日期名称(如您从时间表数组中看到的那样)链接到具有相同日期名称的面板?

...或者您对智能解决方案有任何替代想法吗?

最佳答案

为此,我将使用像 Handlebars.js 这样的模板引擎

最近我完成了一个项目,该项目广泛使用了 Bootstrap 3 的 Handlebars,我发现它非常容易适应该项目

在这个面板中教你 Handlebars 太费力了,但它允许你使用 {{tokens}} 定义一个 HTML 模板,你的数据将存放在其中,并且它具有有用的功能,例如迭代提供的数据集以根据需要构建尽可能多的面板来显示集合中的所有数据

语法最终在标记中看起来像这样:

{{#each event}}
<div class="panel">
<h3>{{event.dayOfWeek}}</h3>
<p>
<label>{{event.date}}</label>
<label>{{event.startTime}} - {{event.endTime}}</label>
</p>
</div>
{{/each}}

super 容易使用。查一下。很棒的工具。

关于javascript - 比较和打印 Bootstrap 面板内的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45424445/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com