2017-11-04 109 views
0

我试图将函数calculation()的结果打印到文本区域,但它似乎不起作用。你能帮忙吗?
Javascript DOM操作:更改元素的文本

<head> 
    <title>Lab 6</title> 
<script> 
function calculate(){ 
for (var i=100; i<1000; i++) { 
var x = i%10; 
var y = Math.floor((i/10)%10); 
var z = Math.floor((i/100)%10); 
if (i== x*x*x +y*y*y + z*z*z) { 

document.getElementbyTagname("textarea").innerHtml = i; 
document.getElementbyTagname("button").addEventListener("click", 
calculate()); 
}}} 

</script> 
</head> 

<body> 
<textarea rows="4" cols="50"> </textarea> 
<button type="button">Click Me!</button> 
</body> 

</html> 
+0

功能是'getElementsByTagName'不'getElementbyTagname'。 Element.getElementsByTagName()方法返回带有给定标签名称的元素的实时HTMLCollection .. [见[而不工作,因为你不能设置一个事件监听器HTMLCollection,你可以访问第一个元素像一个数组.. – kip

+0

首先,你是在DOM中创建之前调用元素;其次,函数document.getElementbyTagname和属性innetHtml不存在;第三,你不能用innerHTML改变文本区域的值(我认为你正在尝试做)。 – JulianSoto

+0

[如何使用Javascript更改