GetElementById,我是否正在使用正确的属性?

时间:2014-05-11 19:04:46

标签: javascript

我不认为这是一个onload问题,因为我使用了window.onload函数。这是代码的相关部分。控制台说大写都是未定义的。当我宣布价值时,我以为我正在定义它。

提前致谢!

<form name="shares">
  <table>
    <tr><td>Enter information here:</td></tr>
    <tr>
      <td>Capital to Invest</td>
      <td id="capitalr"><input type="text" name="capital" onchange="calculate();">  </td> 
    </tr>
</form>

JS

window.onload = function() {
  document.getElementById("hello").innerHTML="Hello";   
  var capitals = document.getElementById("capitalr");
  var x = capitals.id;
  var pps = document.shares.price.value;
};

function calculate () {
  console.log("Hey");
  console.log(capitals);
};

1 个答案:

答案 0 :(得分:0)

您正在函数范围内定义变量,这使得它无法从该函数范围外部访问。在外面定义它将起作用:

var capitals;
window.onload = function() {
  document.getElementById("hello").innerHTML="Hello";   
  capitals = document.getElementById("capitalr");
  var x = capitals.id;
  var pps = document.shares.price.value;
};

function calculate () {
  console.log("Hey");
  console.log(capitals);
};