关于由Javascript代码创建的HTML代码的问题

时间:2010-09-24 07:46:53

标签: javascript html datagrid

我有一个javascript函数,它将datagrid的标题放入THEAD标记中。此代码在body onload事件上触发并正确运行。

但是,当我查看源代码时,我看不到这些动态生成的代码。我想在那里看到它。我该怎么办?

function AddTHEAD(tableName)
{
   var table = document.getElementById(tableName); 
   if(table != null) 
   {
    var head = document.createElement("THEAD");
    head.style.display = "table-header-group";
    head.appendChild(table.rows[0]);
    table.insertBefore(head, table.childNodes[0]); 
   }
}

编辑:我想谈谈我为什么需要这个: 使用上面的函数,我希望在打印页面时在每个页面上显示Datagrid的标题。

为此我在下面有css代码。当我手动添加THEAD标签时,它工作正常。但是当它由Javascript创建时,它可以在打印预览中看到,但不能在真实打印中看到。

    tHead
   {
    display : table-header-group;
   }

编辑2:我找到了一个线索。当我首先打开打印预览页面然后单击那里的打印按钮时,它可以正常工作。但是当我直接clik运行window.print javascript代码的打印按钮时,它不起作用。任何人都可以找到解决方案吗?

2 个答案:

答案 0 :(得分:7)

您将无法使用“查看来源”查看javascript生成的代码。这是因为您正在查看由Web服务器生成的源,并且您正在寻找的HTML代码是在Web服务器提供HTML之后由客户端javascript生成的。

如果您想查看javascript生成的代码,请为Firefox安装Firebug,然后使用“Inspect Element”功能(右键单击屏幕上的元素)。

答案 1 :(得分:1)

源现在可用变量source

var source = document.getElementById(tableName).innerHTML;
// show the source
alert(source);