Есть файл с парой функций, суть которых в построении таблицы и заполнении ее ячеек годами с 1992 до текущего года:
let CurrentYear = new Date().getFullYear();
let StartYear = 1992
Distance = CurrentYear - StartYear
celoe = Math.floor(Distance / 10)
ostatok = Distance % 10
if (ostatok > 0) {
celoe = celoe + 1
}
createTableBody();
tableFill();
function createTableBody() {
let rows = celoe;
let cells = 10;
let table = document.getElementById('my-table');
table.innerHTML = ("<tr>" + "<td></td>".repeat(cells) + "</tr>").repeat(rows);
};
function tableFill() {
let fillFrom = CurrentYear;
let td = document.querySelectorAll('#my-table td');
for( let i = 0; i < td.length; i++ ) {
td[i].innerHTML = "<a href = '/selected_year'>"+fillFrom+"</a>";
fillFrom--;
if( fillFrom < StartYear ) break;
}
};
Есть ХТМЛ, внутри которого я пытаюсь вызвать этот файл:
<table class="my-table">
<script src="../static/js/get_all_years_table.js">
</script>
</table>
Это чудо не работает. Допускаю, потому что несколько функций.
Подскажите, как быть?
Codepen:
https://codepen.io/sunsexsurf/pen/LYGPPrm
UPD:
конечным решеним стало:
let years__block = document.querySelector('.years__block')
for(let i = new Date().getFullYear(); i >= 1992; i--){
let div = document.createElement('div');
div.className = "years__block__item";
div.insertAdjacentHTML('afterbegin', '<a href = "/current_year">'+i+'</a>')
years__block.append(div);
}
это более динамичный вариант, чем таблица и InnerHTML