javascript - 从文件中动态导入值
问题描述
我需要一些帮助来在模板中动态加载数据作为文件更改。以下是数据和代码示例
我有一个 json 文件:
data = '[{"name" : "bob", "value" : "3.1"}, {"name" : "joe", "value" : "5.6"}]';
此文件中的值定期更改(每 2-3 秒)
我有一个 HTML 文件
<head>
<script type="text/javascript" src="data.json"></script>
<script type="text/javascript" src="javascript.js"></script>
</head>
<body>
<table>
<tr>
<td>0</td>
<td>0</td>
</tr>
<tr>
<td>0</td>
<td>0</td>
</tr>
</table>
<body>
<script type="text/javascript">
document.body.innerHTML = markup;
</script>
而 javascript.js 是:
var mydata = JSON.parse(data);
const markup = `
<table>
<tr>
<td>${mydata[0].name}</td>
<td>${mydata[0].value}</td>
</tr>
<tr>
<td>${mydata[1].name}</td>
<td>${mydata[1].value}</td>
</tr>
</table>
`;
所以第一个问题是:如何让数据随着值的变化而动态加载到模板中?jQuery?节点.js?我需要最简单的解决方案,因为我不是新手。
其次,html 代码实际上要复杂一些,但是有没有一种相对简单的方法来循环数据,而不是我必须手动编写所有内容?就像在数据中引入“foreach d”一样?
感谢您的帮助,非常感谢!
解决方案
我希望我有帮助
HTML:
<table id="myTable">
</table>
Javascript:
var x = document.getElementById("myTable");
setInterval(function(){
// Here you get the file in the way that is most convenient for you
// More info here: https://www.w3schools.com/js/js_json_parse.asp
var data = '[{"name" : "bob", "value" : "3.1"}, {"name" : "joe", "value" : "5.6"}]';
var obj = JSON.parse(data);
// Clear the table
x.innerHTML = '';
// Adds new values
for (var key in obj[0]) {
if (obj[0].hasOwnProperty(key)) {
x.innerHTML += '<tr><td>'+key+'</td><td>'+obj[0][key]+'</td></tr>'
}
}
}, 1000);
推荐阅读
- android - 将 FirebaseAuth.AuthStateListener 放在 MVVM 的什么位置?
- javascript - vueJS如何在呈现列表时动态导入和加载组件
- python - Python简化包含OR和AND的if条件
- sql-server - 在 WHERE 子句中添加条件会产生更多结果
- symfony - 实体在更改后不更新
- hibernate - 使用通用生成器时出错
- java - WebDriverWait 在 Selenium 4 中已弃用
- javascript - 如何将每个循环变量值推入数组
- javascript - JSON。JAVA 和 PHP 检查表单值是否存在
- solr - SOLR - 从给定搜索请求的相交多边形中获取所有文档条目