如何将javascript变量打印到html标记中
how to print javascript variable to html tags
我有这个代码
<script language="javascript">var str = "test"; </script>
我想把它打印到我的html 中的h2标签上
<h2 id="header2"> </h2>
我试过使用document.write (str)
;
我也试过document.getElementById("header2").innerHTML = str;
但无效
很可能,您的JavaScript在加载DOM之前就已经执行了,所以document.getElementById("header2")
抛出了一个错误,因此您的脚本无法工作。
您可以通过将DOM包装在onload
事件中来确保在执行JavaScript之前已经加载DOM,如下所示:
window.onload = function(){
// Do something
}
另一种选择是将script元素放在body元素下面,这样脚本在加载上面的所有内容之前不会运行。我建议始终这样做,这样页面就不会"锁定"等待JavaScript加载,但这不一定是确保DOM已加载的经得起未来考验的方法。我认为目前的浏览器都不会这样做,但将来的浏览器可能不会从上到下加载DOM,这会破坏您的脚本。
所以我的建议是把你的HTML文件结构成这样:
<body>
<h2 id="header"></h2>
</body>
<script>
window.onload = function(){
var str = "test";
document.getElementById("header2").innerHTML = str;
}
</script>
它不起作用,因为您试图在创建"header2"h2标记之前赋值。之后必须编写javascript代码。
在这种情况下,你可以写你的代码如下:
<h2 id="header2"> </h2>
<script language="javascript">
var str = "test";
document.getElementById("header2").innerHTML=str;
</script>
您的代码在这里运行良好:
JSFiddle
HTML:
<h2 id="header2"></h2>
JavaScript:
var str = "Test";
document.getElementById("header2").innerHTML = str;
在一个完整的html页面中,它看起来像这样:
<html>
<head></head>
<body>
<h2 id="header2"></h2>
<script>
var str = "Test";
document.getElementById("header2).innerHTML = str;
</script>
</body>
</html>
确保<script>
出现在<h2>
标记之后。
您的问题不清楚
确保html DOM已完全加载,然后您的脚本将关闭
如果您的脚本在头部,另一个选项是通过使用:window.load()
或使用jQuery $(document).ready()
来确保DOM已完全加载
window.onload = function() {
document.getElementById('id').innerHTML = 'str';
}
您需要等待页面加载
确保在编写脚本之前声明了html标记必须在脚本启动之前加载DOM元素。为此,您可以稍后编写脚本。
<body>
<h2 id="header2"> </h2>
</body>
<script type="text/javascript">
var str = "test";
document.getElementById("header2").innerHTML = str;
</script>
或者您也可以在文档中编写此代码。准备
$( document ).ready(function() {
document.getElementById("header2").innerHTML = str;
});
- 使用javascript将动态表从一个html页面打印到另一个html页
- 打印预览没有应用程序页眉和页脚的html表格
- 如何在html中打印选择文本
- 如何在internjs中打印createpage中的HTML源代码
- 用Koa打印漂亮的HTML输出
- 如何在html元素中打印javascript变量
- 如何在php中使用echo来在html中打印文本
- 在 javascript 函数中打印 HTML JavaScript 代码
- 如何使用 JQuQuery 解析 JSON 对象并在 HTML 页面中以表格格式打印输出
- 修改html打印的页眉
- 将 html 打印到多个页面
- 使用自定义 html 打印高库存
- 数据在控制台中打印,分配给$scope但不以 HTML 打印
- 我怎么能在不渲染的情况下使用PHP将HTML打印到网站上呢
- 禁用HTML打印页面上的javascript
- Typescript:将字符串作为HTML打印到终端
- 如何让html打印javascript函数的返回值
- HTML打印限制仅限1页
- 使用javascript将图片添加到html打印输出
- 用JavaScript和HTML打印表情符号