0

これは私が得たものの一部です。電卓です。ボタンクリックイベントから JS メソッドを呼び出そうとしていますが、何か問題があり、表示が更新されません。

<script language="javascript" type="text/javascript" src="calculator.js"> 
        var display = document.getElementById('display');

        function digit( num ){
            if(display == 0){
                display.innerHTML = num;
                } else {
                    display.innerHTML = display.innerHTML + "" + num;
                    }
        };


    </script>
    </head>
    <body>
    <form name="calculator">
      <table width="auto" border="1">
        <tr>
          <!--<td colspan=4><input id="display" type="text"></td> -->
          <td colspan=4><div id="display"></div></td>
        </tr>
        <tr>
          <td>MC</td>
          <td>MR</td>
          <td>MS</td>
          <td><input type="button" value='/' onclick="pushButton(this.value);"></td>
        </tr>
        <tr>
          <td><input type="button" value=7 onclick="javascript:digit(this.value);"></td>
          <td><input type="button" value=8 onclick="javascript.digit(this.value);"></td>
          <td><input  type="button" value=9 onclick="pushButton(this.value);"></td>
          <td><input  type="button" value='*' onclick="pushButton(this.value);"></td>
        </tr>
        <tr>
          <td><input  type="button" value=4 onclick="pushButton(this.value);"></td>
          <td><input  type="button" value=5 onclick="pushButton(this.value);"></td>
          <td><input  type="button" value=6 onclick="pushButton(this.value);"></td>
4

3 に答える 3

3

動く

var display = document.getElementById('display');

あなたの機能に。

于 2013-02-15T04:41:47.890 に答える
2

document.getElementById('display');その要素 ( id=display) が存在する前に呼び出しています。さまざまなことを行うことができますが、最も簡単なのは、<script>を直前</body>または少なくとも直後に移動することです。id=display

于 2013-02-15T04:44:23.287 に答える
0

div に 0 を配置するか、スクリプトで条件を変更します (display == null )

于 2013-02-15T04:52:54.647 に答える