0

我对这个表格脚本有疑问。

我只喜欢 02 列和 5 行,你可以从下面的代码中看到错误的结果。

这是带有文件名的 json 文件:myfile.json

[ 
  {'id': 1, 'name': 'Name1', email: 'Name1@email.com'},
  {'id': 2, 'name': 'Name2', email: 'Name2@email.com'},
  {'id': 3, 'name': 'Name3', email: 'Name3@email.com'},
  {'id': 4, 'name': 'Name4', email: 'Name4@email.com'},
  {'id': 5, 'name': 'Name5', email: 'Name5@email.com'}
 ]

下面是我的插件文件的代码:jquery.table.plugin.js

    // JavaScript Document
    (function($){
        $.fn.table = function(options){

            var defaults = {headerTable:
                    [
                        {name:'Ten', field:'name'},
                        {name:'Email', field:'email'}
                    ],
                };

            var settings = $.extend({},defaults,options);

            return this.each(function(){
                var table = $('<table border=1>');
                 $.getJSON("myfile.json", function(data) {
                    var tr = $('<tr>').appendTo(table);
                    var str = ""
                    for (var i=0;i<settings.headerTable.length;i++)
                    {
                        $(tr).append($('<th>'+ settings.headerTable[i].name +'</th>')); 
                        str += '<tr>';
                        for(var j=0;j<data.length;j++)
                        {
    $('<td>' + data[j][settings.headerTable[i].field] + '</td>').appendTo(table);
                        }
                        str += '</tr>';
                    }

                    $(str).appendTo(table);

                });
                $(this).append(table);
            });
        };
    }(jQuery));

这是我没想到的结果,有人可以帮忙吗?

<table border="1" >
  <tr>
    <td>Ten</td>
    <td>Email</td>

  </tr>
  <tr>
    <td>Name1</td>
    <td>Name2</td>
    <td>Name3</td>
    <td>Name4</td>
    <td>Name5</td>
    <td>Name1@email.com</td>
    <td>Name2@email.com</td>
    <td>Name3@email.com</td>
    <td>Name4@email.com</td>
    <td>Name5@email.com</td>
  </tr>
</table>
4

0 回答 0