2009-08-17 78 views
1

我有一個字符串(通過ajax提取),這是一個完整的html文檔(doxtype到</html>)。有誰知道一種方法將其加載到iframe中?將文檔字符串加載到iframe

我不能簡單地指定在iframe的src中返回文檔的url,因爲響應可能來自帖子,並且重複它可能會產生不良影響。另外,我無法第一次將它提交給iframe,因爲我無法絕對預測結果將是文檔而不是某個json。基本上,我不記得的網址,我必須能夠使用我有的版本(一個字符串)。

jQuery是公平的遊戲,因爲這就是我使用的。

+0

[以下是如何(http://softwareas.com/injecting-html-into-an-iframe)。 – 2009-08-17 15:33:13

回答

0

您可以使用data URI來做到這一點。數據URI是一種加載內嵌數據的方式,就像加載外部數據一樣。他們看起來像這樣:data:<mimetype>,<data>。對於HTML,MIME類型是text/html,在你的情況下,數據是這樣的:<!DOCTYPE><html><head><title>Iframe</title></head><body>Hi!</body></html>。如果我們把這個數據URI,我們得到類似如下:

data:text/html,<!DOCTYPE><html><head><title>Iframe</title></head><body>Hi!</body></html> 

當我們設置這個作爲iframesrc,它看起來像這樣。

var string = '<!DOCTYPE><html><head><title>Iframe</title></head><body>Hi!</body></html>', 
 
    iframe = $('#iframe') 
 

 
iframe.attr('src', 'data:text/html,' + string)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<iframe id="iframe" src=""></iframe>

相關問題