0

プラグイン Generate grid を作成し、データは json 文字列です。

            var objGrid = { 
                "tbody": [
                    { "stt": "1", "name": "Le Nguyen Nhat Bang", "description": "Vinh Long" },
                    { "stt": "2", "name": "Dang Truong Chinh", "description": "Binh Dinh" },
                    { "stt": "3", "name": "Cu Ngoc Sang", "description": "Dak Lak" }
                ]
            }

    (function ($) {
                $.fn.generateGrid = function (data) {
                    this.append("<table>");

                    var tbody = $('<tbody>');
                    $("table", this).append(tbody);
                    if (data != null && data.tbody != null) {
                        for (var j = 0; j < data.tbody.length; j++) {
                            $(tbody).append('<tr>').children('tr:last')
                            .append($("<td>").append(data.tbody[j]....))
                            .append($("<td>").append(data.tbody[j]....))
                            .append($("<td>").append(data.tbody[j]....));
                        }
                    }
                }

            } (jQuery));

 $(document).ready(function () {
            $("#grid").generateGrid(objGrid);
        });

動的テーブルフォローjsonデータを生成したい。今は 3 つのフィールドしかありませんが、別の日には 4 つまたは 5 つのフィールドが必要ですが、プラグインのコードは変更しません。ありがとう

4

1 に答える 1

1

これを試して。各メソッドを使用して、td を追加するための json の各プロパティをループします。したがって、そこにいくつのプロパティがあり、その量の td が追加されます。

(function ($) {
            $.fn.generateGrid = function (gridTitle, data) {
                this.append("<table>");

                var tbody = $('<tbody>');
                $("table", this).append(tbody);
                if (data != null && data.tbody != null) {
                    for (var j = 0; j < data.tbody.length; j++) {
                    var trContent=   data.tbody[j],
                        trElm=$('<tr />') 



                    $.each(trContent,function(k,v){
                        trElm.append('<td>'+v+'</td>');
                    });

                    $(tbody).append(trElm);   
                    }
                }
            }

        } (jQuery));
于 2013-06-10T11:55:35.807 に答える