Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery ui 生成多个服务器端请求的数据表_Jquery Ui_Jquery_Jquery Plugins_Datatables - Fatal编程技术网

Jquery ui 生成多个服务器端请求的数据表

Jquery ui 生成多个服务器端请求的数据表,jquery-ui,jquery,jquery-plugins,datatables,Jquery Ui,Jquery,Jquery Plugins,Datatables,我正在使用启用服务器端处理的jquery插件。使用fnReloadAjax函数时,隐藏处理div和显示新数据之间有2-3秒的延迟。这里有一个关于这个问题的例子。 我发现这是由datatable发出的多个服务器请求造成的 aoColumnDefs: [ { "bSortable": true, "aTargets": [0] }, { "bSortable": true, "aTargets": [1] }, { "bSortable": fal

我正在使用启用服务器端处理的jquery插件。使用
fnReloadAjax
函数时,隐藏处理div和显示新数据之间有2-3秒的延迟。这里有一个关于这个问题的例子。 我发现这是由datatable发出的多个服务器请求造成的

  aoColumnDefs: [
        { "bSortable": true, "aTargets": [0] },
        { "bSortable": true, "aTargets": [1] },
        { "bSortable": false, "aTargets": [2] },
        { "bSortable": true, "aTargets": [3] },
        { "bSortable": true, "aTargets": [4] },
       { "bSortable": true, "aTargets": [5], "sClass": "hidden" },
        { "bSortable": true, "aTargets": [6], "sClass": "hidden" },
        { "bSortable": false, "aTargets": [7] },
        { "bSortable": false, "aTargets": [8] },
        { "bSortable": false, "aTargets": [9], "sClass": "hidden" }         

      ]
在我的页面
onchange
中,一组单选按钮的事件调用服务器获取新数据,如下所示

oTable.fnReloadAjax("getCaseList?caseStatus=xxx&showValidOnly=true");
在firebug控制台中,我看到两个请求一个接一个地发出

  • GEThttps://localhost/getCaseList?caseStatus=xxx&showValidOnly=true&_=1363611652185
  • GEThttps://localhost/getCaseList?caseStatus=xxx&showValidOnly=true&sEcho=4&iColumns=9&sColumns=&iDisplayStart=0&iDisplayLength=100&sSearch=&bRegex=false&sSearch_0=&bRegex_0=false&bSearchable_0=true&sSearch_1=&bRegex_1=false&bSearchable_1=true&sSearch_2=&bRegex_2=false&bSearchable_2=true&sSearch_3=&bRegex_3=false&bSearchable_3=true&sSearch_4=&bRegex_42.可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,5=真的和调查。6=和bRegex(6)和bRegex(6)和bRegex(6)和bRegex(6)假和可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,5=5=真的和调查的,可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,6=6=和Bregegex(6=和bRegex(6)6=假假和B)6=假和可调查的,假,可调查的,假和可调查的,可调查的,可调查的,可调查的,可调查的,可调查的,6=假和可调查的,可调查的,可调查的,6=假和ORTABLE_5=true&bSortable_6=true&bSortable_7=true&bSortable_8=true&_=1363611701804
  • 处理div在第一个请求完成后被隐藏,但只有在第二个请求完成后才加载新数据


    为什么datatable要进行第二次额外调用?

    我也遇到了同样的问题。在我的例子中,我也一直在使用服务器端处理。 初始化datatable之后,我编写了以下语句来隐藏一些列

    tableExample.fnSetColumnVis(5, false);
    tableExample.fnSetColumnVis(6, false);
    tableExample.fnSetColumnVis(3, false);
    
    我意识到它要求了4次。 然后我删除了这些行,在我的案例中解决了多个请求的问题。 然而,如果您仍然想隐藏列,还有另一种方法,即添加一个类('sClass':'hidden'),将“display:none”设置到datatable的列定义中的列中

      aoColumnDefs: [
            { "bSortable": true, "aTargets": [0] },
            { "bSortable": true, "aTargets": [1] },
            { "bSortable": false, "aTargets": [2] },
            { "bSortable": true, "aTargets": [3] },
            { "bSortable": true, "aTargets": [4] },
           { "bSortable": true, "aTargets": [5], "sClass": "hidden" },
            { "bSortable": true, "aTargets": [6], "sClass": "hidden" },
            { "bSortable": false, "aTargets": [7] },
            { "bSortable": false, "aTargets": [8] },
            { "bSortable": false, "aTargets": [9], "sClass": "hidden" }         
    
          ]
    
    希望这有帮助。
    谢谢

    我也遇到了同样的问题。在我的例子中,我也一直在使用服务器端处理。 初始化datatable之后,我编写了以下语句来隐藏一些列

    tableExample.fnSetColumnVis(5, false);
    tableExample.fnSetColumnVis(6, false);
    tableExample.fnSetColumnVis(3, false);
    
    我意识到它要求了4次。 然后我删除了这些行,在我的案例中解决了多个请求的问题。 然而,如果您仍然想隐藏列,还有另一种方法,即添加一个类('sClass':'hidden'),将“display:none”设置到datatable的列定义中的列中

      aoColumnDefs: [
            { "bSortable": true, "aTargets": [0] },
            { "bSortable": true, "aTargets": [1] },
            { "bSortable": false, "aTargets": [2] },
            { "bSortable": true, "aTargets": [3] },
            { "bSortable": true, "aTargets": [4] },
           { "bSortable": true, "aTargets": [5], "sClass": "hidden" },
            { "bSortable": true, "aTargets": [6], "sClass": "hidden" },
            { "bSortable": false, "aTargets": [7] },
            { "bSortable": false, "aTargets": [8] },
            { "bSortable": false, "aTargets": [9], "sClass": "hidden" }         
    
          ]
    
    希望这有帮助。
    谢谢

    服务器端请求由内部的
    \u fnAjaxUpdate
    函数发出,该函数从
    \u fnDraw
    调用


    这意味着您可能正在调用一些需要重新绘制表的方法,如排序或搜索,以发出附加请求。

    服务器端请求由内部
    \u fnAjaxUpdate
    函数发出,该函数从
    \u fnDraw
    调用

    这意味着您可能正在调用一些需要重新绘制表的方法,如排序或搜索,从而发出额外的请求