2013-02-15 2 views
0

Хеш-то, что я получил, его калькулятор, я пытаюсь вызвать метод JS из событий нажатия кнопки, что-то не так, но отображение не будет обновляться.HTML/Javascript: Как изменить тег ввода с помощью javascript?

<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> 
+0

Что такое функция pushButton? –

ответ

3

Move

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

в вашу функцию.

+0

это сработало, спасибо – Greg

2

Вы звоните document.getElementById('display');, прежде чем этот элемент (id=display) существует. Вы можете сделать множество вещей, но проще было бы просто переместить <script> к непосредственно перед </body> или, по крайней мере, после id=display

0

Места 0 в DIV или изменить состояние в скрипте (дисплей == NULL)