使用Javascript访问/更改表中的信息

时间:2013-12-17 14:26:48

标签: javascript greasemonkey

我正在使用greasemonkey来改变现有网页的功能..如果你不熟悉greamonkey它并不重要..主要信息是现有页面的当前代码如下所示:

<div id="sqlDiv" class="sqlBorderDiv" style="display: none;">
<div class="reportBorderDiv">
    <table class="reportTable">
        <tbody>
            <tr>
            <tr class="reportRow1">
            <tr class="reportRow2">
                <td>55555</td>
                <td>Bruce Wayne</td>
                <td>12456789123</td>
                <td>2013-12-17</td>
                <td>Batman</td>
                <td>Superhero</td>
                <td>Menace</td>
                <td>123246</td>
                <td>12456</td>
                <td>123456</td>
                <td></td>
            </tr>
        </tbody>
    </table>
</div>

我想在其上运行一个脚本,它将使用该单元格中的信息将任何reportRow的第一个单元格转换为超链接。我正在尝试使用下面的脚本,但出了点问题,我不知道是什么。 (我真的很喜欢javascript)。谢谢你的任何建议!!

var anchor = null;
var container;
var rows;
var cells;
var demoNum;
var linkString = "https://somewebsite.com/";

container = document.getElementById('sq1Div');

rows = container.getElementsByTagName("tr"); 

for (var i = 0; i < rows.length; i++) { 
    var className = rows[i].getAttribute("class"); 
    if ( className == "reportRow1" || className == "reportRow2" ) { 
        anchor = rows[i];
        cells = anchor.getElementsByTagName("td");
        demoNum = cells[0];
        linkString = linkString + demoNum;
        cells[0] = <a href = linkString > demoNum </a>;    
    }
}

3 个答案:

答案 0 :(得分:0)

问题出在

cells[0] = <a href = linkString > demoNum </a>;

那应该是一个字符串,如下所示:

cells[0]="<a href='"+linkstring+"'>"+demonum+"</a>";

要将其放回表格的第一行,您可以执行此操作

row[i].childNodes[0].innerHTML=cells[0];

此外,您还有document.getElementById("sq1div"),而不是"sqlDiv"

答案 1 :(得分:0)

的document.getElementById( '* SQ 1 * DIV');

不正确的整理者,您使用数字“1”而不是字母“l”

当然正如scrblnrd3行写的新链接构建不正确

答案 2 :(得分:0)

在我看来,HTML有无与伦比的标签,这会不会让我感到困惑?