我对对象和 OOP 很陌生。我真的不知道如何解释它,但我会尝试。
所以我试图通过 JS 读取 JSON,JSON 是从 PHP 传递的。如果所有信息都在同一个 html 页面上,这将很容易,但我正在尝试一些我也是新的东西。
所以让我展示我的代码......
首先是 app.js 中的 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
.
新代码:
应用程序.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>