我对YUI很陌生,需要一些帮助.
我有一个这样的 JSON 响应:
{
"Results":[
{
"alpha":57.935,
"beta:{
"delta":2.975,
"omega":1.431
},
"gamma":{
"theta":"0.339",
"lambda":"1.195"
}
},
{
"alpha":87,
"beta":{
"lambda":2.680,
"kappa":0.714
},
"gamma":{
"zeta":"0.288",
"epsilon":"0.289"
}
}
]
}
我想要一个带有嵌套列的数据表,其中:
1) alpha、beta 和 gamma 是父列.
2) beta 和 gamma 各有两列由 JSON 键值对组成(例如,delta => 2.975).
3)行数,即总键值对,是动态的。
基本上,像这样:
----------------------------------------------
| alpha | beta | gamma |
----------------------------------------------
| 57.935 | delta | 2.975 | theta | 0.339 |
----------------------------------------------
| | omega | 1.431 | lambda | 1.195 |
----------------------------------------------
| 87.435 | lambda | 2.680 | zeta | 0.288 |
----------------------------------------------
| | kappa | 0.714 | epsilon | 0.289 |
----------------------------------------------
我已经能够生成非嵌套的简单 JSON 响应.
我的问题:
1)我有每个JSON子项的对象({theta:0.339}等)。两个子列都需要来自同一对象的数据。如何在不修改的情况下使用它?我应该对 myColumnDefs 中的两个子列使用相同的"keyName"吗?
2) 如何在 alpha td 为空的情况下创建多行?
任何帮助将不胜感激!
一个容易解决的问题。 除了能够在将 JSON 发送到客户端之前将 JSON 格式化为单独的行之外,您可以使用一些列配置、格式化程序和自定义 bodyView modelList 属性库来组合解决方案,该属性库可平展数据以进行显示。http://jsbin.com/3/efigim/1/edit?javascript,live
这可能涉及表行>数据记录关联的一些中断,因为 bodyView 的 modelList 包含自己的行模型,而不是共享 clientId。 这可能会也可能不会妨碍您,具体取决于您是否需要其他功能。
但是,由于数据表的数据 ModelList 保留了 beta 值和 gamma 值的对象(仅自定义了视图的表示形式),因此您可能没问题。
YMMV, HTH