将JSON输出为表的建议 - jQuery.tmpl?别的什么?

时间:2012-02-07 18:16:47

标签: javascript jquery json html-table jquery-templates

我从服务器返回了JSON。我会在这里粘贴2个第一个记录(长),但理论上它可能是100个。

{
"1": {
    "text": "First Thoughts and Feelings",
    "filters": {
        "2": {
            "text": "% Postive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "46.1907"
                },
                "3": {
                    "text": "Quebec",
                    "val": "47.9016"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "52.9057"
                }
            }
        },
        "1": {
            "text": "Net Positive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "51.9106"
                },
                "3": {
                    "text": "Quebec",
                    "val": "50.7760"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "47.9157"
                }
            }
        }
    }
},
"2": {
    "text": "Purchase Intent",
    "filters": {
        "2": {
            "text": "% Postive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "54.5407"
                },
                "3": {
                    "text": "Quebec",
                    "val": "53.9017"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "49.7267"
                }
            }
        },
        "1": {
            "text": "Net Positive",
            "banners": {
                "2": {
                    "text": "Ontario",
                    "val": "51.7294"
                },
                "3": {
                    "text": "Quebec",
                    "val": "52.7261"
                },
                "1": {
                    "text": "Total Respondents",
                    "val": "52.9762"
                }
            }
        }
    }
}
}

我想把这些数据放到一个表中,其中基本上有一个问题列(根文本),过滤器,然后是每个横幅。我会像这样创建一个这样的

<thead>
    <tr>
        <th>Question</th> 
        <th>Filter</th>
        <th>Ontario</th>
        <th>Quebec</th>
        <th>Total</th>
    </tr>...

我试图找出填充此表的最佳方法,因为横幅数量是动态的,可能是2,可能是20。

如果有2个问题,2个过滤器,每个有3个横幅,我需要一个包含5列,4行(不包括标题)的表。

Row 1 -> Q1 -> filter1 -> banner1 -> banner2 -> banner3
Row 2 -> Q1 -> filter2 -> banner1 -> banner2 -> banner3
Row 3 -> Q2 -> filter1 -> banner1 -> banner2 -> banner3
Row 4 -> Q2 -> filter2 -> banner1 -> banner2 -> banner3

理想的可排序我想,但是任何专栏,虽然我知道我可以在之后用jQueury添加这种类型的功能。

寻找关于如何完成这项工作的建议,因为我无法绕过它。

2 个答案:

答案 0 :(得分:1)

我用于快速简便的可排序,可搜索表格的最佳解决方案之一是http://datatables.net/

答案 1 :(得分:0)

SlickGrid我的成绩很好。

一些亮点:

  • 自适应虚拟滚动(处理数十万行 极端的反应能力)
  • 极快的渲染速度
  • 支持jQuery UI主题
  • 更富细胞的背景后期渲染
  • 可配置&amp;定制
  • 全键盘导航
  • 列调整大小/重新排序/显示/隐藏
  • 柱自动调整&amp;力配合
  • 可插拔单元格格式器&amp;编辑
  • 支持编辑和创建新行。
  • 分组,过滤,自定义聚合器等!
  • 高级分离&amp;具有撤消/重做支持的多字段编辑器。
  • “GlobalEditorLock”用于管理多个情况下的并发编辑 页面上的视图可以编辑相同的数据。

他们有link to SO questions