2017-02-19 50 views
0

我對「test2」有困難。此輸入文本框無法打印輸出

我的第一個「test1」正在工作並打印出我想要的樣子。但是,test2沒有顯示任何結果,什麼都沒有。

簡單的錯誤我想,但我只是困惑。

代碼:

<!DOCTYPE> 
<html"> 

<head> 
    <script type="text/javascript"> 
     function myFunction(event) { 
      event.preventDefault(); 
      var k = event.keyCode; 
      document.getElementById("test1").innerHTML = event.keyCode; 
      document.body.children.myform.children.test2.value = event.keyCode; 
     } 
    </script> 
</head> 

<body onkeydown="myFunction(event)"> 
    <form id="myform"> 
     <center> 
      <table> 
       <tr><td><br /><br /><br /></td></tr> 
       <tr> 
        <td> 
         <h1>Key Code</h1> 
        </td> 
       </tr> 
       <tr> 
        <td> 
         <input id="test2" type="text" /> 
        </td> 
       </tr> 
       <tr> 
        <td> 
         <p id="test1"></p> 
        </td> 
       </tr> 
      </table> 
     </center> 
    </form> 
</body> 

</html> 

的jsfiddle是否有幫助:

https://jsfiddle.net/o935hyzv/

+0

一些小問題。不要使用表格進行佈局,對錶格數據使用表格。使用CSS進行佈局。其次,'

'元素不再存在。第三,您的''元素似乎在其中有引號。例如'' – j08691

+0

您是否想要「test2」顯示實際的輸入或鍵碼? – azs06

+0

'document.body.children.myform'不起作用。正確的是'document.forms.myform'。 – Aloso

回答

1

如果您想訪問表單字段就像在你的榜樣,您輸入的標籤有權宣佈name屬性。

<script type="text/javascript"> 
    document.getElementsByTagName('form')[0].children.test2.value = event.keyCode; 
</script> 
<input id="test2" name="test2" type="text" /> 

無論如何,你聲明ID,我寧願這個JS代碼:

document.getElementById("test2").value = event.keyCode;