これは全く不思議です。私はすべてをチェックし、すべてを捜したが、これはうまくいくはずだ。私は他のHTML要素と私のコードで同じことをやってきましたが、それらはすべて私に値を与えましたが、今回はこの特定のHTML要素に対して未定義になっています。以下のコードの抜粋:HTML要素のvalueプロパティが未定義の値を与えています
<div class="pianoKeyboard">
<button id="octaveUp" value="off">Octave Up</button>
<button id="octaveDown" value="off">Octave Down</button>
<div id="octaveNum" value='0'>Default</div>
var octaveNumber = document.getElementById("octaveNum");
octaveup.addEventListener("click", function(e) {
if (booleanVal == false) {
booleanVal = true;
console.log(octaveNumber.value);
あなたはどんな問題を参照していますか?私はしないので。私はconsole.log
要素自体に値を設定することはできませんが、.value
を追加するとundefined
となります。
取得する
octaveNumber.value
を使用することはできませんそして、私が想定して要素は、何value
属性を持っていませんDivのデータ値に+1を加えるには、最初にそれを整数として解析する必要があります。あなたの明確な答えをありがとう。 – Limpuls@Limpulsこれは一般的には賢明なアイデアです:)少し精通しているユーザーは面白くてDOM属性値を変更しようとするかもしれないからです。 '+ octaveNumber.dataset.value'を使って数値に変換するか(例えば' var octave = + octaveNumber.dataset.value')、もっと冗長な 'Number(octaveNumber.dataset.value)'を使うだけです – Terry