【问题标题】:JQuery DataTables plugin issueJQuery DataTables 插件问题
【发布时间】:2011-03-04 11:49:17
【问题描述】:

我在下面的代码中遇到了一个奇怪的问题

$(document).ready(function() {
 $('#example').dataTable({
    "bProcessing":true,
    "sAjaxSource":'http://localhost/utcms/json_source2.txt'});
 });
});

如果我在 safari 中运行该页面没问题,此代码会将数据加载到表中。我的问题是,如果我通过 django 使用 render_to_response 运行同一页面,我得到的只是处理标志没有数据。调试时它只是说:加载资源失败:已取消。

找不到源文件不是问题,我还排除了由于呈现页面和中断获取过程而导致问题的可能性。我必须在数据表设置中遗漏一些东西。奇怪的是它可以在静态页面上工作,但不能在 django 呈现的页面上工作,即使它看到了文件,否则它会在调试时为该文件生成 404。

欢迎提出建议

干杯

克里斯

PS:我是 JQuery 和 DataTables 的新手

【问题讨论】:

    标签: jquery django jquery-plugins datatables


    【解决方案1】:

    如果其他人有类似的困难,我有一个解决方法。它并不优雅,但很有效。

    从 JQuery 请求函数中获取 JSON 响应并对其进行解析并将其作为数组加载到表中。正如我所说,它并不优雅,但它确实有效。

    【讨论】:

    • 我刚刚发现这个问题是由 localhost:8000 上的开发站点和在 localhost 上生成的文件的脚本问题引起的。 (跨站脚本错误,我认为它被称为)
    【解决方案2】:

    您应该尝试将mimetype option 添加到 render_to_response :

    from django.shortcuts import render_to_response
    
    def my_view(request):
        # View code here...
        return render_to_response('myapp/utcms/json_source2.txt', {"foo": "bar"},
            mimetype="application/json")
    

    我也像我一样使用了很多 Jquery DataTables 及其服务器端处理功能,你真的应该检查these utilities for Django。安装后,一切都归结为使用几行代码并将查询集传递给它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多