от
Я пытался отправить данные с
data в JavaScript, поэтому я использовал data- =, как это в HTML



const detailInput = document.getElementsByClassName('avg');
const d = 0,
  c = 0,
  b = 0,
  a = 0;

for (let input of detailInput) {
  d = input.datasets.pentingd
  c = input.datasets.pentingc
  b = input.datasets.pentingb
  a = input.datasets.pentinga
}
undefined is not an object
. есть ли решение, пожалуйста              

Пожалуйста, войдите или зарегистрируйтесь для публикации ответа на этот вопрос.

2 Ответы

0 голосов
от
Используйте
let
вместо
const
, чтобы назначить переменную, иначе это константа, которую нельзя изменить. Это
dataset
, а не наборы данных У вас есть имя avgpentingd, но вы не смогли изменить pentingd Может быть, использовать английское слово в ожидании, а не писать? Откройте консоль в своем браузере и следите за ошибками. В Firefox или Chrome щелкните меню в верхнем правом углу и выберите инструменты для разработчиков и веб-консоль. Это необходимо, если у вас нет другого отладчика. После исправлений и минимального изменения вашего кода это выглядит так и работает:
const detailInput = document.getElementsByClassName('avg');
let d = 0,
  c = 0,
  b = 0,
  a = 0;

for (let input of detailInput) {
  d = input.dataset.avgpentingd
  c = input.dataset.avgpentingc
  b = input.dataset.avgpentingb
  a = input.dataset.avgpentinga
}

console.log(d);
0 голосов
от
Вы должны попробовать это в вашем JavaScript:
const detailInput = document.getElementsByClassName('avg');

let pentings = array();

for (let input in detailInput) {
  pentings.push(input.dataset.penting);
}

console.table(pentings);
В вашем HTML сделайте это:
...