2012-12-17 38 views
1

我對對象和麪向對象很陌生。我真的不知道如何解釋它,但我會嘗試。調用函數並運行它

所以我想通過JS閱讀JSON,JSON從PHP傳遞。如果所有的信息都在同一個html頁面上,這很容易,但我正在嘗試一些我也是新的東西。

那麼讓我告訴我的代碼...

首先是JS這是app.js

var Donors = function(){ 
    var api = this.list; 

    $(document).ready(function(){ 
     $.getJSON(api, function(data){ 
     var donorObj = data.payload; 
     $.each(donorObj, function(i, donor){ 
      //console.log(donor.ign); 
     }); 
     }); 
    }); 

    } 

這部分做的是從JSON我」讀當文檔準備就緒時,給它和console.log每個名字(或者donor.ign)。

在html頁面,或header.php中

<script> 
$(function(){ 
    var list = <?php cbProxy(); ?>; 
    var Dons = new Donors(); 
    Dons.list = list; 
    }); 
</script> 

這是在列表下面的JSON數據。您已經知道其他人做了什麼,它只是將JSON傳遞給Donors()函數。

JSON例如:

{ 
"code": 0, 
"payload": [ 
{ 
"time": 1349661897, 
"packages": [ 
"49381" 
], 
"ign": "Notch", 
"price": "15.99", 
"currency": "USD" 
} 

我使用到只是讓功能,把它在同一頁面或文件,這是我第一次做這種功能。我怎樣才能讓函數運行我發送的數據,所以它的名字是console.log()

我曾嘗試

console.log(Donors()); 

其中僅記錄undefined

新代碼:

app.js

var Donors = function(api){ 

    this.list = api; 

    $(document).ready(function(){ 
     $.getJSON(this.list, function(data){ 
     var donorObj = data.payload; 
     $.each(donorObj, function(i, donor){ 
      console.log(donor.ign); 
     }); 
     }); 
    }); 

    } 

的index.php /內嵌腳本

<script> 
$(function(){ 
    var list = <?php cbProxy(); ?>; 
    var dons = new Donors(list); 
}); 
</script> 
+0

檢查錯誤控制檯。對於初學者來說:首先嚐試解決不使用OOP的異步內容。 – Bergi

+0

如果你mean't的console.log不顯示任何錯誤......我只是不知道如何實際運行這個.....我不是新的阿賈克斯,因爲我做了很多次。 – devs

+0

你發現你的文檔已經準備好了嗎? – Jai

回答

0

我想應該是這樣的:

$.getJSON(api, function(data){ 
    $.each(data.payload, function(i, donor){ 
     console.log(donor.ign); 
    }); 
}); 

試這並看看是否有用。

1

如果執行

var Dons = new Donors(); 
Dons.list = list; 

然後你做分配一些給list屬性之前調用構造函數。這意味着您的api變量會undefined,只要你還沒有定義的原型對象從您的Donors繼承上一個。取而代之的是,通過列表作爲參數的構造器:

function Donors(api) { 
    this.list = api; 
    // do something 
} 
var dons = new Donors(list); 
+0

'var dons = new Donors(list);' '

  • 11. 如何創建一個函數並在函數上調用它
  • 12. 如何從調用堆棧中刪除一個函數並並行運行?
  • 13. 從一個函數運行調用PHP
  • 14. Ajax調用完成後運行函數
  • 15. Python未運行調用函數
  • 16. 當調用OnChange時運行jquery函數
  • 17. ajax運行後調用閉包函數
  • 18. 對php腳本進行href鏈接調用並運行它
  • 19. 並行函數調用與異步
  • 20. 並行調用多個bash函數
  • 21. Javascript,Highcharts:避免並行函數調用
  • 22. 多次並行調用函數
  • 23. Node.js中的並行函數調用
  • 24. 調用多個並行函數在PHP
  • 25. 當我運行它並按暫停休息時,C程序顯示它卡在函數調用中
  • 26. 如何運行API調用並在c#中並行執行它們的響應?
  • 27. 從函數中獲取變量並在事件中運行它
  • 28. 更改div的html並在函數運行時顯示它
  • 29. 如何並行運行函數?
  • 30. Python:並行運行n個函數