全部,
想知道是否有人可以提供帮助。我通过 dom 操作和 JSON 代码使用 DataTables 已经有一段时间了。但是,我们的两个较大的结果集仍然运行得太慢,所以我试图将它们转换为客户端数据源。我在那里有带有标题的表格,但数据没有被注入到标记中。
我已经构建了输出页面并复制了该代码的输出片段以供参考。它正在通过 JSON 验证器进行验证,我看不出它与示例代码之间没有区别。事实上,有一次我尝试使用我网站上的示例数据来使这项工作无济于事。没关系,但我的 JSON 是通过 Symfony 操作创建的,可以直接访问(当然是登录)我可以通过 XHR 调用成功地在 Firebug 上看到经过验证的 JSON 输出,所以我知道它在运行时可用于浏览器。我在此页面中运行了其他数据表,因此包含已正确设置。我的理论是,与实例化有关的某些东西,无论是格式错误的参数还是缺少的命令,都会导致它失败而没有错误。
以下是我的代码:
AJAX 页面输出(为清晰起见截断):
{"sEcho": 0, "iTotalRecords": 1788, "iTotalDisplayRecords": 1788, "aaData":[["", "<a href=\"/web/link/123\"><img border=\"0\" alt=\"View Prospect\" src=\"/web/images/view.png\" /></a>", "First", "Last", "company ", "address", "city", "state", ""] ,["", "<a href=\"/web/link/124\"><img border=\"0\" alt=\"View Prospect\" src=\"/web/images/view.png\" /></a>", "first1", "last1", "company1", "address1", "city1", "state1", "email1"] ]}
jQuery初始化:
jQuery('#prospectList').dataTable( {
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "/web/prospect/ajax",
"bJQueryUI": true,
"sPaginationType": "full_numbers",
"bAutoWidth": false,
"bFilter":true,
"bLengthChange": true,
"bPaginate": true,
"bSort": true,
"iDisplayLength": 10,
"bInfo": true,
"aoColumns": [
{ "sTitle": "Action" },
{ "sTitle": "First Name" },
{ "sTitle": "Last Name" },
{ "sTitle": "Company" },
{ "sTitle": "Street"},
{ "sTitle": "City" },
{ "sTitle": "State" },
{ "sTitle": "Email" }
]
})
有人看到有什么遗漏吗?提前致谢。