我在这里遇到一些问题。
我有一个<script language ="JavaScript" runat="server">
代码从网站读取一个表,解析数据并将其存储在二维数组中。它工作正常;我可以使用Response.Write显示数据。
现在,我想使用数组中的数据构建自己的表并在浏览器中显示它。我想我只想补充一下:
</head>
<body onload="tableCreator();">
<table id="table" border="1">
<tr>
<td id="Document Number">Document Number</td>
<td id="Document Link">Document Link</td>
<td id="Date Filed">Date Filed</td>
<td id="Date Entered">Date Entered</td>
<td id="Date Terminated">Date Terminated</td>
<td id="Description">Description</td>
</tr>
</table>
<body>
</html>
脚本结束后,但问题就出现了。我不知道在哪里插入tableCreator()
函数。如果我在(script language =“JavaScript”runat =“server”)代码中执行此操作(为了能够使用数组的数据),则不会调用该函数。当我将标签更改为(script language =“JavaScript”)(没有runat =“server”)时,调用该函数,但是脚本没有运行(我有多个Response.Write,什么也没有,但表,是正在印刷)
function tableCreator () {
var table = document.getElementById("table");
var rowCount = table.rows.length;
var row;
row = table.insertRow(rowCount);
var cell1 = row.insertCell(0);
cell1.innerHTML = "1";
}
有什么想法吗?
答案 0 :(得分:1)
您在混淆服务器端代码和客户端代码。
JavaScript无法访问在服务器上创建的二维数组(向runat="server"
添加script
标记将无法访问您的服务器端变量。您需要使用服务器端语言序列化数组,然后使客户端可以访问它(隐藏字段可以很好地用于此)。
或者,如果您有数据服务器端,为什么要创建表客户端。只需在页面加载时创建表服务器端。