2014-02-17 197 views
2

假設我有兩個html文件,one.html和two.html。我想包括在one.html two.html,所以我這樣做,是這樣的,包括另一個html文件中的html文件和JS

<script> 
     $(function(){ 
      $("#middle").load("two.html"); 
     }); 
</script> 

我有一個腳本文件說,這我加載在one.html年底爲

的script.js
<script src="scripts/script.js" ></script> 

在那個文件中,我正在編寫的函數在two.html的元素上實現。但是這些函數並沒有被應用於two.html。那麼,做這件事的正確方法是什麼?

+0

可能重複[Event binding on dynamic created elements?](http://stackoverflow.com/questions/203198/event-binding-on-dynamically-created-elements) – Quentin

回答

2

使用$.get jQuery函數

$.get("tow.html", function(data) { 
    $("#middle").html(data); 
    alert("Load was performed."); 
}); 
1

你爲什麼不使用(隱藏?)IFRAME?如果它位於同一臺服務器上,則可以訪問父頁(one.html)的功能和元素:

window.parent.example_function(); 

或使用其DOM元素播放。

0

要添加事件的動態加載的元素,你需要使用.live()功能jQuery的< 1.9.on()如果的jQuery> = 1.9

.live()

.on()

0

可以先負載您的第二頁內容幷包含僅限於之後的javascript 附加的HTML被包括在內。

$.get("two.html", function(data) { 
    $('#middle').html(data); 
    $('head').append($('<script>').attr('type', 'text/javascript').attr('src', 'scripts/script.js')); 
});