2013-02-09 102 views
0

我想JavaScript加載一個html代碼,以便它可以嵌入到一個頁面中,我得到的只是未編譯的原始html代碼。用html加載html代碼

<script> 
document.write('http://www.example.com/index.php?title=Media:Object4&action=raw&ctype=html') 
</script> 

它包含內部的html編碼,我希望它嵌入到網頁中,以便我可以與其他網站共享。

+0

第一HTML代碼不運行*。其次,任何地方都沒有*編譯。 – techfoobar 2013-02-09 08:07:50

+0

你可以看看AJAX,但如果你想要從另一個域請求數據,這是非常困難的。 – 11684 2013-02-09 08:16:53

回答

2

您是否試圖從該URL獲取HTML並將其嵌入到頁面中? JavaScript不能做的,出於安全考慮,但如果你正在使用PHP的服務器端,你可以使用:

echo file_get_contents("http://.........."); 

或者你可以使用iframe:

<iframe src="http://........" /> 
2

文件撰寫 - 增加文本到文檔 - 它不從從Web獲取文檔。但是,您可以使用object tag

它應該是這個樣子的是:

<object type="text/html" data="http://www.example.com/index.php?title=Media:Object4&action=raw&ctype=html" style="width:100%; height:100%"></object> 

此外,如果您抓取的網頁是在同一個域,你可以使用AJAX去取。

+0

我仍然給我原始代碼。它不會編譯。 – user2056671 2013-02-09 08:25:13

2

,使這項工作最簡單的方法,排序的,是通過使用<iframe>:

<iframe src="http://www.example.com/index.php?title=Media:Object4&action=raw&ctype=html"></iframe> 

如果你想加載一個特定的容器內,你必須執行使用JavaScript的Web請求; jQuery的例子:

<div id="container"></div> 
<script> 
    $('#container').load('http://www.example.com/index.php?title=Media:Object4&action=raw&ctype=html'); 
</script> 

如果遠程URL不在同一個域中,你需要使用代理:

<script> 
    $('#container').load('/path/to/myproxy.php', { 
     url: 'http://www.example.com/index.php?title=Media:Object4&action=raw&ctype=html' 
    }); 
</script> 

然後你的PHP代碼可能看起來像:

<?php 

if (parse_url($_POST['url'], PHP_URL_HOST) === 'www.example.com') { 
    echo file_get_contents($_POST['url']); 
} 
+0

可以說,我有我的網頁,我希望腳本加載另一個HTML腳本,上述所有仍然給我的文本,而不是被編譯。 – user2056671 2013-02-09 08:32:37

+0

@ user2056671您還需要運行遠程頁面上的JavaScript嗎? – 2013-02-09 08:34:37

+0

是的,我希望它做到這一點。 – user2056671 2013-02-09 08:36:39