我试图将data-=""
的数据发送到JavaScript,所以我在HTML中使用了data- =这样的
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
}
<input type="hidden" class="avg" data-avgpentingd="<?php $avgPuas ?>">
,但这不是因为它说undefined is not an object
。请问有什么解决办法
答案 0 :(得分:0)
您应该在javascript中尝试以下方法:
const detailInput = document.getElementsByClassName('avg');
let pentings = array();
for (let input in detailInput) {
pentings.push(input.dataset.penting);
}
console.table(pentings);
在您的HTML中执行以下操作:
<input type="hidden" class="avg" data-penting="<?php $avgPuas ?>">
您还可以在此处添加多个input
标记
答案 1 :(得分:0)
let
而非const
来分配变量,否则它是无法更改的常量。dataset
,而不是数据集 在对代码进行更正和最小更改之后,它看起来像这样并且可以正常工作:
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);
<input type="hidden" class="avg" data-avgpentingd="It works now">
了解数据集here