java
  • javascript
  • html
  • jmesa
  • 2012-10-13 93 views 0 likes 
    0

    我在Java中直接使用tableModel.render()直接獲取HTML使用jmesa。一些在我的結果列表我的網頁對象包含HTML - 例如:jmesa呈現HTML文本

    class blah { 
        String email; 
        public String getEmailLink() { 
         return "<a href='" + email + "</a>" 
        } 
    } 
    

    在我的Java代碼,我可能只是這樣做:

    htmlRow.addColumn(new HtmlColumn("emailLink")); 
    

    jmesa被渲染這段文字。我如何告訴jmesa將文本原樣呈現爲文檔中的html?

    TIA

    回答

    1

    看着the JMesa soure code,HtmlCellEditor會自動轉義HTML。

    我還沒有測試過它,但是你應該可以用不同的類型覆蓋默認的HtmlCellEditor ......比如裸機BasicCellEditor。它不應該太多額外的代碼:

    HtmlColumn emailLinkColumn = new HtmlColumn("emailLink"); 
    emailLinkColumn.setCellEditor(new BasicCellEditor()); 
    htmlRow.addColumn(emailLinkColumn); 
    

    另一種選擇到這一切的是創建一個自定義CellEditor中,並讓它創建<a>標籤的你,而不是你的豆腐做的。如果你想要去那條路線,This page應該讓你開始使用自定義的CellEditor。

    順便說一句,如果你只是一個細胞內的值搞亂,覆蓋/更換CellEditor可能是你所需要的(CellEditor它類似於一個<td>體)。 CellRenderer涉及整個單元格(類似於<td>及其內容)。

    1

    使用HtmlCellRenderer爲shown in this tutorial

    相關問題