Member 14713380 Ответов: 1

Не удается прочитать свойство 'value' undefined в htmltableelement.<'anonymous'>


У меня есть код c # в asp.net вид: (он создает временные входы для меня с описанным классом)


Смотреть:
<td id="td01">@Html.TextBoxFor(m => m.Model1[nr_rows].Rozpoczecie, new { @class = "start", @type = "time" })</td>
<td id="td01">@Html.TextBoxFor(m => m.Model1[nr_rows].Zakonczenie, new { @class = "end", @type = "time" })</td>
<td id="td01">@Html.TextBoxFor(m => m.Model1[nr_rows].OdbiorGodzin, new { @class = "gethours", @type = "time" })</td>


<td id="td01">@Html.TextBoxFor(m => m.Model1[nr_rows].DniOdpracowania, new { @class = "additional_free",@type = "time", @readonly = true })</td>
<td id="td01">@Html.TextBoxFor(m => m.Model1[nr_rows].SaldoNadgodzin, new { @class = "overtime", @type = "time", @readonly = true })</td>



И у меня есть код, который делает для меня различные вычисления:


язык JavaScript
table.addEventListener('change', function (e) {
    const classList = e.target.classList;
    if (classList.contains('start') || classList.contains('end') || classList.contains('gethours')) {
        //retrieve the associated inputs
        const tr = e.target.parentNode.parentNode;
        const [additional_free, overtime] = [...tr.querySelectorAll('.additional_free,.overtime')];

        additional_free.value = overtime.value     <<<<<<<<<< this


    }
});



Хотя все работает, я получаю такую неизвестную для меня ошибку:


> VM49:85 Uncaught TypeError: не удается прочитать свойство 'value' undefined
at HTMLTableElement.<anonymous> (<anonymous>:85:42)


Добавлю, что данные в самом начале считываются из базы данных и задаются в качестве начальных значений в этой таблице

Что я уже пробовал:

Anybody knows what's going on?

1 Ответов

Рейтинг:
0

Richard MacCutchan

additional_free.value = overtime.value     <<<<<<<<<< this

Вероятно, это означает, что одна или обе переменные additional_free и overtime не были инициализированы. Используйте свой отладчик, чтобы увидеть, какие фактические результаты возвращаются вызовом querySelectorAll Всегда полезно проверить результаты функций перед использованием объектов; не думайте, что такие вызовы всегда будут успешными.