Javascript代码不起作用?告诉我为啥[重复]

Posted

技术标签:

【中文标题】Javascript代码不起作用?告诉我为啥[重复]【英文标题】:Javascript code not working? Tell me why [duplicate]Javascript代码不起作用?告诉我为什么[重复] 【发布时间】:2013-02-08 23:58:23 【问题描述】:

我正在编写一个简单的 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>

【问题讨论】:

【参考方案1】:

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

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

function displayText()
  var el = document.getElementById('abcd'); 

  var xa = el.innerHTML;
  xa += 'asdf';

  el.innerHTML = xa;

此外,在实际创建您所指的元素之前,您不能调用该函数。所以把调用移到body标签的底部。

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

【讨论】:

【参考方案2】:

在代码运行时,主体(包括您的 div)尚未被解析。 getElementById('abcd')当时没有找到任何东西。

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

(如果您打算将xa 中的新值显示在同一字段中,则需要将其写回带有document.getElementById('abcd').innerHTML = xa 的元素。)

【讨论】:

以上是关于Javascript代码不起作用?告诉我为啥[重复]的主要内容,如果未能解决你的问题,请参考以下文章

为啥我的 html 请求在 javascript 中不起作用 [重复]

为啥onclick处理程序在javascript中与innerHTML一起使用时不起作用[重复]

我正在尝试从 .csv 读取信息并将其放入 C# 中的数组中。谁能告诉我为啥代码不起作用?

为啥我的停止按钮在这个 javascript 音频播放器上不起作用?

为啥这种 javascript 注入攻击不起作用? [复制]

我不明白为啥这段代码不起作用 for int 错误 [重复]