使用JavaScript获取另一个div ID内的div ID

编辑解释页面加载

我的HTML页面在另一个div中有一个div,都由id引用,并且在整个文档中都是唯一的。

<head>
<script type="text/javascript" src="myscript.js"></script>
</head>
...
<body onload=display()>
<div id="rightwork">
<div id="mychart" > </div>
</div>
...

我的JavaScript是为了写'mychart'div内的东西,但我无法设法引用它:(

这个问题与这个问题有关,除了这个是id内的一个类。

这是我的javascript:

function display() {
    var code = "<a onclick="second(); return false;" href="#">Hello</a>";
    document.getElementById('rightwork').innerHTML = code;
}

function second() {
    console.log(document.getElementById('rightwork'));
    console.log(document.getElementById('mychart'));
}

该线

document.getElementById("mychart");

返回null ...

而这个工作正常!

document.getElementById("rightwork");

这会返回预期的div。

我试过这个

document.getElementById("rightwork").getElementById("mychart");

这当然不起作用,因为getElementById(“rightwork”)返回单个元素。

那么,引用内部div的解决方案是什么?


只需使用

window.onload = function(){
   var myChart = document.getElementById("mychart");
   // ... code that loads chart
}

或者移动

<script type="text/javascript" src="myscript.js"></script>

到页面页脚以确保在运行脚本之前加载了dom


你可以发布整个myscript.js内容吗? 如果文档正确加载为什么document.getElementById("mychart"); 不会工作?

可能是因为执行javascript时并未加载<div id="mychart" > </div>并且当时加载了<div id="rightwork">

为确保文档已完全加载,请在html末尾放置<script type="text/javascript" src="myscript.js"></script>

链接地址: http://www.djcxy.com/p/88021.html

上一篇: Get div id inside another div id with JavaScript

下一篇: Connecting client to server using Socket.io