jquery数据表卡在AJAX服务器端表上

时间:2010-07-19 16:47:36

标签: jquery ajax json grid datatables

全部,

想知道是否有人可以提供帮助。通过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" }
         ]
      })

有人看到有什么遗失?提前谢谢。

1 个答案:

答案 0 :(得分:0)

好的,明白了。默认情况下,字符串中的“sEcho”值设置为0以进行测试。除非设置为1,否则它将不会执行任何操作。另外,请注意确保通过JSON传递的值正确编码为整数。