2012-05-25 33 views
0

我通過包含JS對象的ajax加載一個html頁面。你如何獲得新加載(子)頁面中的對象到父頁面的引用?獲取Aj對象內JS對象的引用

家長:

//parent.html 

<script> 

    function ParentObject() { 
     this.children = new Array(); 
    } 

    var aParentObject = new ParentObject(); 

    $.get('/url/to/child.html', function(data) { 
     $("#child-div").html(data); 
    }); 

</script> 

兒童:

//child.html 

<div>Some html element</div> 

... 

<script> 
    function ChildObject() { 
     this.someProperty = "I'm a Child"; 
    } 

    var aChildObject = new ChildObject(); 
</script> 
+0

嘗試的console.log(aChildObject)。您應該能夠查看我認爲的子對象實例。 –

回答

2

在聲明新的變量

var aChildObject = new ChildObject(); 

當您添加包含一個JScript腳本將執行HTML您應該使用VAR你會在那之後得到參考。因此,您必須確保在插入後訪問子變量。

$.get('/url/to/child.html', function(data) { 
    $("#child-div").html(data); 
    //Access your child here 
    alert(aParentObject.someProperty); 
}); 
+0

你是不是指'alert(aChildObject.someProperty)'? – lms

+0

aah是的,抱歉,提醒(aChildObject.someProperty) –

0

您可能要代替.get()使用​​。使用​​,您可以爲「子」頁面指定一個選擇器來撤回要檢索的特定部分。

假設child.html的divid="child-div"

//parent.html 

<script> 

    function ParentObject() { 
     this.children = new Array(); 
    } 

    aParentObject = new ParentObject(); 

    $("#child-div").load('/url/to/child.html #child-div'); 

</script> 

請參見 「加載頁面片段」 在此節:你的HTML功能後http://api.jquery.com/load/