解析json并放入许多表格

时间:2014-07-22 01:54:04

标签: php ajax json mootools

我试图在一些表格中打印这个json,但我做得不好,我希望你们能帮助我,这是我用AJAX得到的json

<?php
    $json = array(
        'teams'=>array(
            array(
                'item'=>'tabla_clasif',
                'rows'=>array(
                    array('No'=>'1','logo1'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'2','logo2'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'3','logo3'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'4','logo4'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'5','logo5'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'6','logo6'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'7','logo7'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'8','logo8'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'9','logo9'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'10','logo10'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'11','logo11'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'12','logo12'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'13','logo13'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'14','logo14'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'15','logo15'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12'),
                    array('No'=>'16','logo16'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','pg'=>'3','pe'=>'0','pp'=>'0','gf'=>'9','gc'=>'2','dg'=>'7','pt'=>'12')
                )
            ),
            array(
                'item'=>'goles_marca',
                'rows'=>array(
                    array('No'=>'1','logo1'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'2','logo2'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'3','logo3'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'4','logo4'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'5','logo5'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'6','logo6'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'7','logo7'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'8','logo8'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'9','logo9'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'10','logo10'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'11','logo11'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'12','logo12'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'13','logo13'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'14','logo14'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'15','logo15'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3'),
                    array('No'=>'16','logo16'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gf'=>'3')

                )
            ),  
            array(
                'item'=>'goles_recib',
                'rows'=>array(
                    array('No'=>'1','logo1'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'2','logo2'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'3','logo3'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'4','logo4'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'5','logo5'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'6','logo6'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'7','logo7'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'8','logo8'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'9','logo9'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'10','logo10'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'11','logo11'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'12','logo12'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'13','logo13'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'14','logo14'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'15','logo15'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3'),
                    array('No'=>'16','logo16'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','gc'=>'3')
                )
            ),  
            array(
                'item'=>'efect_gol',
                'rows'=>array(
                    array('No'=>'1','logo1'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'2','logo2'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'3','logo3'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'4','logo4'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'5','logo5'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'6','logo6'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'7','logo7'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'8','logo8'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'9','logo9'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'10','logo10'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'11','logo11'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'12','logo12'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'13','logo13'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'14','logo14'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'15','logo15'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3'),
                    array('No'=>'16','logo16'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','eg'=>'3')
                )
            ),  
            array(
                'item'=>'remate_total',
                'rows'=>array(
                    array('No'=>'1','logo1'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'2','logo2'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'3','logo3'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'4','logo4'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'5','logo5'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'6','logo6'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'7','logo7'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'8','logo8'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'9','logo9'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'10','logo10'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'11','logo11'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'12','logo12'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'13','logo13'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'14','logo14'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'15','logo15'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3'),
                    array('No'=>'16','logo16'=>'images/lobos.png','team1'=>'atlante','pj'=>'3','rt'=>'3')
                )               
            ),
        )
    );
    echo json_encode($json);
?>

我需要将它们放入表格中,每个项目的每个表格,我已尝试过每一个,直到我得到每一个或每一行,但它真的很难

制作它的最佳方法是什么?

        onSuccess : function(data) {}

我正在寻找的HTML的一个例子是:

<table>
    <thead>
        <tr>
            <td>No</td>
            <td>Logo</td>
            <td>Team</td>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>1</td>
            <td><img src="images/lobos.png" /></td>
            <td>atlante</td>
        </tr>
    </tbody>
</table>

1 个答案:

答案 0 :(得分:0)

这是使用Element构造函数的另一个建议。您还应该看看MooTools More and the HTML table,如果您可以稍微重新格式化JSON,可能是一个很好的选择。

无论如何,我会以这种方式做你想要的事情:

json = JSON.parse(json);

json.teams.each(function (team) {

    var newTable = new Element('table', {
        class: 'hidden myWidget'
    }).inject(document.body);
    var thead = new Element('thead').inject(newTable);

    var tittleRow = new Element('tr');
    for (var title in team.rows[0]) new Element('td', {
        'html': title
    }).inject(tittleRow);
    tittleRow.inject(thead);

    var tbody = new Element('tbody').inject(newTable);
    team.rows.each(function (row) {
        var newRow = new Element('tr');
        for (var value in row) new Element('td', {
            'html': row[value]
        }).inject(newRow);
        newRow.inject(tbody);
    });
});

示例:http://jsfiddle.net/2KjSn/

聚苯乙烯。您应该在自己找到解决方案时发布答案,而不是编辑问题。这样它对其他人也可能有用。