私は自分の単純な短いJavaScript計算機を作ろうとしていますが、私は見つけたチュートリアルよりもアプローチが違っているようです。私はこの問題を考えるJavaScriptの計算機が入力で評価されていない
<!DOCTYPE html>
<head>
<meta charset = 'utf-8'>
</head>
<html>
<body>
<input name='x' onchange='this.value=eval(this.value)'>
<br>
<button>1</button>
<button>2</button>
<button>3</button>
<br>
<button>4</button>
<button>5</button>
<button>6</button>
<br>
<button>7</button>
<button>8</button>
<button>9</button>
<br>
<button>0</button>
<button>.</button>
<button>+</button>
<br>
<button>*</button>
<button>/</button>
<button id='enter'>=</button>
<script>
function el(x){return document.querySelector(x);}
function els(x){return document.querySelectorAll(x);}
var x=el("input");
function g(){x.value+=this.innerHTML;}
var t = els("button");
for(i=0;i<t.length;i++){
t[i].onclick=g;
}
はそれらの線ですが、私は、あなたは確かに問題があるまでフラグを立ててきた二行それ
el('#enter').onclick=x;
el("input").innerHTML=eval(t);
</script>
</body>
</html>
さて、あなたは別のアプローチをとってきました。質問はなんですか?それは正しく動作していませんか?もしそうなら、*どのように*正しく動作していないのですか?あなたが期待していない結果を見ていますか? –
'onclick'を' input'要素に設定するのはなぜですか?なぜ、 't'が要素の集合であるときに' innerHTML'を 'eval(t)'に設定するのでしょうか? –
意味があるアプローチから始めます。ロジックは確かに表示されていないし、私たちはあなたのためにこのすべてを書くためにここにいません – charlietfl