【问题标题】:Parsing Javascript generated table with simple html dom用简单的 html dom 解析 Javascript 生成的表
【发布时间】:2017-10-22 05:46:04
【问题描述】:

我有一个问题。可以解析 Javascript 生成的 html 表吗?因为我尝试使用简单的 html dom,每次结果都是空白页。

这是解析后的网站:

<html>
<head>

<script src="informations.php" type="text/javascript" language="javascript"></script>


</head>
<body>

<script language="javascript" type="text/javascript">
<!--

// Draw table from 'jsData' array of objects
function drawTable(tbody) {
    var tr, td;
    tbody = document.getElementById(tbody);
    // loop through data source
    for (var i = 0; i < data.length; i++) {
        tr = tbody.insertRow(tbody.rows.length);
        tr.setAttribute("class", "f1");
        td = tr.insertCell(tr.cells.length);
        td.innerHTML = data[i][1];
        td = tr.insertCell(tr.cells.length);
        td.innerHTML = data[i][2];
td = tr.insertCell(tr.cells.length);
        td.setAttribute("align", "center");
        td.innerHTML = data[i][3];
        td = tr.insertCell(tr.cells.length);
        td.setAttribute("align", "center");
        td.innerHTML = data[i][4];
td = tr.insertCell(tr.cells.length);
        td.setAttribute("align", "center");
        td.innerHTML = data[i][5];

    }
}

//-->
</script>


<table>
<tr>
<td><h2>Informations</h2></td>
</tr>
</table>
<table class="sortable">
<thead>
<tr>
    <th>Name</th>
    <th>Information</th>
<th>Birthday</th>
<th>Postcode</th>
<th>Job</th>
</tr>
</thead>
<tbody id="FData"></tbody>
</table>

<script language="javascript" type="text/javascript">
drawTable("FData");
</script>
</body>
</html>

我对经典表格没有任何问题,但是对于 js 生成的表格,我每次都会得到空白页的结果。解决办法是什么?

【问题讨论】:

  • 如何将表格发送回 PHP 以便它解析?
  • 我尝试用简单的html dom解析,我设置了这个文件的url,我尝试用简单的html dom解析td-s。
  • Javascript 在浏览器中运行。如果只是将 URL 下载到 PHP 中,它不会运行 Javascript,因为 PHP 不是浏览器。
  • 我现在能做什么?如何解析这张表?

标签: javascript php html html-table simple-html-dom


【解决方案1】:

在您的 JS 函数中尝试此代码。

// 查找 id="myTable" 的元素:

var table = document.getElementById("myTable");

//创建一个空元素并将其添加到表格的第1位:

var row = table.insertRow(0);

// 在“new”的第一个和第二个位置插入新的单元格(元素) 元素:

var cell1 = row.insertCell(0); var cell2 = row.insertCell(1);

// 向新单元格添加一些文本:

cell1.innerHTML = "NEW CELL1"; cell2.innerHTML = "NEW CELL2";

【讨论】:

  • 我不明白这个。如果我把这个额外的表放在我的表之前,那么我的表将能够解析吗?我看到你的代码会在我的桌子之前放一个额外的桌子,不是吗?
  • 请在您的表格标签中分配 ID。像这样:&lt;table id="myTable"&gt;
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-28
  • 2014-03-18
  • 1970-01-01
相关资源
最近更新 更多