Javascript代码不工作?告诉我为什么

Javascript代码不工作?告诉我为什么,javascript,html,Javascript,Html,我正在编写一个简单的javascript代码,我不知道有什么不起作用。 如果你知道了,请告诉我 <!DOCTYPE html> <html> <head> <script> function displayText(){ var xa = document.getElementById('abcd').innerHTML; xa+= 'asdf'; } displayText(); </script> </head>

我正在编写一个简单的javascript代码,我不知道有什么不起作用。 如果你知道了,请告诉我

<!DOCTYPE html>
<html>
<head>
<script>
function displayText(){
var xa = document.getElementById('abcd').innerHTML;
xa+= 'asdf';
}

displayText();  
</script>
</head>
<body>
<div id="abcd"></div>
</body>
</html>

函数displayText(){
var xa=document.getElementById('abcd').innerHTML;
xa+=‘asdf’;
}
displayText();

代码运行时,主体(包括您的div)尚未解析<代码>getElementById('abcd')当时找不到任何内容

将脚本元素移动到正文的末尾,以便在解析正文后运行,或者从
onload
处理程序调用
displayText()
函数


(如果希望
xa
中的新值显示在同一字段中,则需要使用
document.getElementById('abcd')。innerHTML=xa
)将其写回元素。

代码运行主体时(包括您的div)尚未解析<代码>getElementById('abcd')当时找不到任何内容

将脚本元素移动到正文的末尾,以便在解析正文后运行,或者从
onload
处理程序调用
displayText()
函数


(如果希望
xa
中的新值显示在同一字段中,则需要使用
document.getElementById('abcd')。innerHTML=xa
)将其写回元素。

innerHTML
返回元素当前内容的字符串,而不是指向它的指针。所以用这个来代替:

function displayText(){
  document.getElementById('abcd').innerHTML += 'asdf';
}

此外,在实际创建所引用的元素之前,不能调用该函数。因此,移动body标记底部的调用

<!-- .... -->
<script>
  display();
</script>
</body>

显示();

innerHTML
返回元素当前内容的字符串,而不是指向该元素的指针。所以用这个来代替:

function displayText(){
  document.getElementById('abcd').innerHTML += 'asdf';
}

此外,在实际创建所引用的元素之前,不能调用该函数。因此,移动body标记底部的调用

<!-- .... -->
<script>
  display();
</script>
</body>

显示();