拜托,我需要帮助...这是我的代码:
<h2 class="title" id="ti"><span class="subtitle" id="sub"></span></h2>
document.getElementById('ti').innerHTML = "hello";
document.getElementById('sub').innerHTML = "my word";
上的ID:ti
工作正常,但在ID:sub
上返回给我一个错误:
"Uncaught TypeError: Cannot set property 'innerHTML' of null"
我会感激一些帮助;)
PS:如果我测试没有document.getElementById('ti')。innerHTML =“hello”,则document.getElementById('sub')。innerHTML =“my word”工作正常
答案 0 :(得分:6)
您使用文字sub
替换了标识为hello
的范围。该范围不再存在,因此当您尝试获取时,您会获得null
。
答案 1 :(得分:0)
正如@Quentin告诉你的那样,你正试图访问一个不存在的id“sub”。
您的问题的解决方案可以是:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<h2 class="title" id="ti">
</h2>
<script type="text/javascript">
var parent = document.getElementById('ti');
var new = document.createElement("span");
new.className = "subtitle";
parent.innerHTML = "Hello";
new.innerHTML = "My Word";
parent.appendChild(new);
</script>
</body>
</html>