Я создаю инструмент для представления данных воспроизведения для радиостанции.Идея состоит в том, чтобы извлечь историю воспроизведения из API программного обеспечения воспроизведения, а затем вручную добавить дорожки, воспроизводимые извне программного обеспечения воспроизведения.API выводит ежедневный плейлог с 00:00 до 24:00.
Когда пользователь в действии входит в систему, устанавливает дату и время своего шоу, а затем выбирает проигранные песни.в этот срок в отчет.Чего я не знаю, так это как отфильтровать результаты из json по часам в значении "date".Примеры HTML, jQuery, JSON ниже.
Я искал другие вопросы с похожими проблемами, но не нашел ответа.Я довольно новичок в этом, поэтому я не знаю, где искать дальше.Буду очень признателен за любую помощь или советы, как улучшить мой код!
jquery:
$('.gettracks').click(function() {
const date = document.getElementById('date').value;
const starthh = document.getElementById('starthh').value;
const startmm = document.getElementById('startmm').value;
const endhh = document.getElementById('endhh').value;
const endmm = document.getElementById('endmm').value;
$.getJSON(
'https://www.playlogurl.com/playlog.php&date=' + date,
function(data) {
var items = [];
$.each(data, function(key) {
items.push(
"<tr id='" +
key +
"'><td>" +
data[key].date +
'</td>' +
'<td>' +
data[key].artist +
'</td>' +
'<td>' +
data[key].song +
'</td>' +
'<td>' +
data[key].length +
'</td>' +
'</tr>'
);
});
$('<tbody/>', {
class: 'list',
html: items.join('')
}).appendTo('.my-new-list');
}
);
});
HTML snippets:
<input type="text" id="starthh" /> :
<input type="text" id="startmm" />
<input type="text" id="endhh" /> :
<input type="text" id="endmm" />
<button class="gettracks">Get Tracks</button>
<table class="my-new-list"></table>
JSON:
{
"0": {
"date": "2019-01-28 07:56:34",
"artist": "Michal Jackson",
"song": "Beat It",
"album": "Beat It",
"length": "4:48",
... other values
},
"1": {
"date": "2019-01-28 08:12:39",
"artist": "Iron Maiden",
"song": "Run To The Hills",
"album": "Trooper",
"length": "4:28",
... other values
},
...
"30": {
"date": "2019-01-28 12:02:39",
"artist": "Ministry",
"song": "No Glory",
"album": "Trooper",
"length": "4:28",
... other values
},
"31": {
"date": "2019-01-28 12:15:03",
"artist": "Killing Joke",
"song": "Pylon",
"album": "Euphoria",
"length": "4:48",
... other values
},
....
}
Я хотел бы нажать на html только те песни, которые были воспроизведены между временем начала и конца, из входных данных html "starthh" & "endhh"(12: 00-16: 00, например).