2014-10-01 47 views
-1

我從數據庫中獲取一個URL作爲文本,並將其放入一個HTML對象中並將此對象添加到佈局中。 我希望此文本能夠以URL或IMG的形式工作。 你可以在代碼中看到我試過的東西。沒有發現確實是一個方法......GWT html對象將文本顯示爲url或img

我的代碼:

     int listSize = result.size(); 
         int i; 


         assetPanel.clear(); 
           for(i=0;i<listSize;i++) 
           { 
            HorizontalPanel vPanelPic = new HorizontalPanel(); 
            HTML picSpace = new HTML(); 
            picSpace.setHTML("<img src = " + result.get(i).getUrl() + "style=width:304px;height:228px>"); 
            //Window.alert("<a href " + result.get(i).getUrl()+ "</a>"); 
            vPanelPic.add(picSpace); 
            assetPanel.add(vPanelPic); 

           } 

回答

1

你的HTML是無效的。試試這個:

// img: 
picSpace.setHTML("<img src='" + result.get(i).getUrl() + "' style='width:304px;height:228px'>"); 

// link: 
Window.alert("<a href='" + result.get(i).getUrl() + "'>URL</a>"); 
+0

作品!謝謝 – 2014-10-01 12:57:10

+0

恭喜,現在您很容易受到各種XSS/XSI的攻擊!專業提示:使用'SafeHtml'(和'SafeHtmlTemplates'使其更容易)和'SafeUri'。 – 2014-10-01 13:29:05

+0

@ThomasBroyer HTML picSpace = new HTML(); \t \t \t \t \t \t \t SafeHtmlBuilder safePicHtml =新SafeHtmlBuilder(); \t \t \t \t \t \t \t safePicHtml.appendHtmlConstant( 「」); 這是正確的方法嗎? – 2014-10-01 15:22:49