【发布时间】:2021-12-06 23:37:35
【问题描述】:
我是 JS 和 HTML 的新手,对于一个作业,我收到了包含数组的 stocks.js:
'use strict';
const stocks = [
{ company: 'Splunk', symbol: 'SPLK', price: 137.55 },
{ company: 'Microsoft', symbol: 'MSFT', price: 232.04 },
{ company: 'Oracle', symbol: 'ORCL', price: 67.08 },
{ company: 'Snowflake', symbol: 'SNOW', price: 235.8 },
{ company: 'Terradata', symbol: 'TDC', price: 44.98 }
];
module.exports.stocks = stocks;
我应该在我制作的另一个静态 HTML 页面stocklist.html 中使用这个数组来制作一个包含来自stocks.html 的所有数据的表格。到目前为止,我有:
<html lang = "en">
<head>
<meta charset = "utf-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
</head>
<body>
<table>
<caption><h1>Stock List</h1></caption>
<thead>
<tr>
<th>Company |</th>
<th>Symbol |</th>
<th>Cost</th>
</tr>
</thead>
<tbody id = "stockTable">
</tbody>
</table>
<script>
const { stocks } = require('./stocks.js');
buildTable(stocks);
function buildTable(data) {
var table = document.getElementById("stockTable")
for (var i = 0; i < data.length; i++) {
var row =
`<tr>
<td>${data[i].company}</td>
<td>${data[i].symbol}</td>
<td>${data[i].price}</td>
</tr>`
table.innerHTML += row;
}
}
</script>
</body>
</html>
当我将数组stocks 从stocks.js 复制并粘贴到<script> 元素中时,表格创建得很好。但是,鉴于作业的要求,我不能这样做,我也不能编辑stocks.js。如何将stocks 数组从stocks.js 导入stocklist.html,以便我可以使用buildTable 访问?
编辑:我的不可编辑的 package.json 文件被分配给我。
{
"name": "assignment3",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon server.js"
},
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.17.1",
"nodemon": "^2.0.12"
}
}
【问题讨论】:
-
只需编辑在您的 buildTable() 函数上方添加这一行。 我说的对吗?
-
我尝试将
<script type="text/javascript" src="stocks.js"></script>放在buildTable(stocks)和function buildTable(data)之间,不幸的是,无论我把它放在哪里,它都会将</script>从你的行中关联起来给了我原始代码中的<script>。
标签: javascript html arrays html-table