【问题标题】:jQuery DataTables server-side processing with Java使用 Java 进行 jQuery DataTables 服务器端处理
【发布时间】:2015-05-31 16:45:45
【问题描述】:

我正在寻找如何使用 Java 中的服务器端处理来实现 jQuery DataTables。我通过使用以下参数尝试了以下方式。下面是我的 jQuery ready 函数代码。

$(document).ready(function() {
    //url = http://localhost:8080/jQuery-DataTable-Java-Integration/serverExample
    $('#myTableId').DataTable({
        "serverSide" : true,
        "processing" : true,
        /*"bProcessing" : true,
        "bServerSide" : true,*/
        "ajax" : {
            "url" : "serverExample",
            "type" : "POST"
        },
        "columns" : [ {
            "data" : "Phone Number"
        }, {
            "data" : "name"
        }, {
            "data" : "Email"
        } ]
    });
});

在我的 servlet doPost() 方法中,请求参数 sEcho 为空。

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        logger.info("In do post method of server servlet..");
        logger.info("sEcho request parameter = " + request.getParameter("sEcho"));//returning null
//other code here
}

我的 jQuery DataTables 版本是 1.10.7。应该使用哪些参数,serverSidebServerside,两种方法我都试过了,但还是一样。任何最新更新的工作示例参考都会有所帮助。

【问题讨论】:

    标签: jquery jakarta-ee jquery-datatables


    【解决方案1】:

    在服务器端处理模式下使用DataTables 1.10版本时,客户端发送draw参数和其他参数。完整列表显示在DataTables website

    DataTables 1.9 之前的版本在服务器端处理模式中使用sEcho 参数,更多信息请参阅documentation

    如果您为 DataTables 1.9 编写了服务器端脚本,则可以强制 DataTables 1.10 发送与先前版本兼容的参数。以下是手册的摘录:

    旧版本的 DataTables (1.9-) 使用了一组不同的参数 从服务器发送和接收。像这样编写的脚本 对于 DataTables 1.10+ 将无法与 DataTables 一起使用 1.9-。但是,DataTables 1.10 确实为为 1.9- 编写的脚本提供了兼容模式。此兼容模式由使用触发 旧的sAjaxSource 参数(而不是新的ajax 参数)或通过设置$.fn.dataTable.ext.legacy.ajax = true;

    您应该使用 serverSideprocessing,它们是 1.10 版的首选选项名称,尽管它也接受以前版本的选项名称(bServerSidebProcessing)。

    【讨论】:

      猜你喜欢
      • 2014-06-24
      • 2021-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-13
      • 1970-01-01
      • 2011-04-01
      • 1970-01-01
      相关资源
      最近更新 更多