2010-09-24 67 views
0

我有一個JavaScript函數,它將datagrid的頭部放入THEAD標籤中。此代碼觸發body onload事件並正確運行。關於HTML代碼創建Javascript代碼

但是,當我查看源代碼時,我看不到這些動態生成的代碼。我想在那裏看到它。我該怎麼做?

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; 
    } 

EDIT2:我發現了線索。當我第一次打開打印預覽頁面,然後點擊那裏的打印按鈕時,它就起作用了。但是當我直接clik運行window.print JavaScript代碼的打印按鈕,它不起作用。任何人都可以有解決方案嗎?

回答

7

您將無法使用「查看源代碼」查看javascript生成的代碼。這是因爲您正在查看由網絡服務器生成的源代碼,並且您要查找的HTML代碼是由客戶端JavaScript生成的,在該網絡服務器提供了HTML後。

如果您想查看javascript生成的代碼,請爲Firefox安裝Firebug,並使用「Inspect Element」功能(右鍵單擊屏幕上的某個元素)。

+0

+1爲Firebug。 – Lekensteyn 2010-09-24 07:50:26

+4

這也可以在最近的Chrome和Safari的副本中本地完成(儘管Safari要求啓用Web Inspector) – Yahel 2010-09-24 07:53:50

+0

感謝您的回覆。我編輯了我的問題來解釋我的目的。 – mavera 2010-09-24 07:58:49

1

該源現在可用於變量source

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