2014-02-15 18 views
1

我有這樣的代碼與在新窗口中的id =「X」分區,以顯示與ID =「X_T」的表:我如何在新窗口中保留班級表格?

function showOrHideTable(id) { 
     var div = document.getElementById(id); 
     var popup = window.open("about:blank"); 
     popup.document.open(); 
     popup.document.write('<html><head></head>' + div.innerHTML + '</html>'); 
    popup.document.getElementById(id + '_t').style.display = "block"; 
    popup.document.getElementById(id + '_t').setAttribute("class","table sortable"); 
     popup.document.close(); 
} 

但設置屬性附加傷害類「表格排序」在新窗口中,不在父窗口中採取效果... ,它顯示完美的這個類,但不是在新窗口中。 該表格顯示爲純文本格式及其錯誤。

如何在新窗口中保留表格的類別? 謝謝你,請原諒,我的英語

編輯: 排序是一個js,使表按列排序 表是CSS,它的加載方式:

提升:與=「默認」包圍至少=「內容「>

+1

你還需要新窗口的文件中定義這些類。即包括定義這些的樣式表。 – techfoobar

回答

0

設置類屬性是不夠的。您需要在新窗口的文檔中定義這些類。即包括定義這些的樣式表。假設CSS類tablesortablestyles.css的定義,你需要做到以下幾點:

function showOrHideTable(id) { 
    var div = document.getElementById(id); 
    var popup = window.open("about:blank"); 
    popup.document.open(); 
    popup.document.write('<html><head>'++ 
     '<link rel="stylesheet" href="styles.css">'+ // include the stylesheet 
     '</head>' + div.innerHTML + '</html>'); 
    popup.document.getElementById(id + '_t').style.display = "block"; 
    popup.document.getElementById(id + '_t').setAttribute("class","table sortable"); 
    popup.document.close(); 
} 
+0

謝謝。 事實上,可排序是JS腳本,至極在主頁面加載: 表是在CSS。但項目是liftweb,所有頁面初始化方式: 舉:與=「默認」包圍至少=「內容」> 和表類自動加載... 我可以初始化帶電梯的新的一頁:環繞,班表會加載嗎? – user3313534