我不知道很多 javascript 但我意识到的一件事就是这样做
function example()
{
document.getElementById("example").innerHTML="<script>document.write(example)</script>"
}
不工作!我理解这一点,但有没有另一种方法可以做同样的事情?
我不知道很多 javascript 但我意识到的一件事就是这样做
function example()
{
document.getElementById("example").innerHTML="<script>document.write(example)</script>"
}
不工作!我理解这一点,但有没有另一种方法可以做同样的事情?
这种方法对我有用:
<body>
<div id="main">
</div>
<script>
// create a script element
var script = document.createElement('script');
// fill its inner html with js code
script.innerHTML = 'alert("Javascript");'
// add it inside your target div and then profit!
document.getElementById('main').appendChild(script);
</script>
</body>
编辑:我在这里找到了关于你的问题的更多信息,我建议你阅读这个问题,它有很多有用的答案,它还解释了为什么你的第一种方法不起作用:可以用 innerHTML 插入脚本吗?
在页面加载后使用此代码在 div 中写入数据的简单方法可以这样完成:
<html>
<head>
<script>
window.onload = function () {
var script = document.createElement('script');
script.innerHTML = 'alert("Javascript");'
document.getElementById('main').appendChild(script);
}
</script>
</head>
<body>
<div id="main">
</div>
</body>
</html>
您的脚本有两个错误。这是行不通的,因为变量名和函数名等于 div id 并且这个错误的方法用于 javascript。您将代码写入您的 div,但您不运行它。你可以试试;
<div id="mydiv"></div>
<script>
function example()
{
document.getElementById("mydiv").innerHTML = eval("document.write('lololo')");
}
example();
</script>