动态呈现列
本文关键字:动态 | 更新日期: 2023-09-27 17:56:29
我动态加载了数据表,所有列都来自 aoColumns 所需的 JSON 格式的数据库。
我可以像这样呈现任何列:
"aoColumns": [
{
"sName": "I_CPN",
"fnRender": function (oObj)
{
return a button
}
}]
其中sName
是我的列名称,这是静态的,我可以从 JSON 格式的 C# 代码中动态获取aoColumns
的上述内容。我的问题是我无法将fnRender
放入 JSON 对象中。
我怎样才能获得fnRender
以便我可以将我的列呈现为按钮。
JSON 格式不能携带函数对象。只是一些有限的纯数据类型集(请参阅 http://www.json.org)以及可以序列化为字符串并反序列化的其他所有内容。
因此,您可以将函数作为字符串传输,然后在 JavaScript 前端上使用 eval
将其转回代码。例如,参见 JSON.parse vs. eval() 以获取有关如何使用 eval
的示例。
尽管这是可能的,但它以某种方式破坏了原始JSON作为简单的数据容器设计。
您还可以编写某种通用fnRender
函数,例如,该函数将采用列名并使用getElementById()函数查找相应的按钮元素。
您的示例代码很小以提供更好的答案(为了概括,我们必须至少有 2 个示例:)