ParamQuery ColModel无法正确显示

时间:2018-05-15 19:11:05

标签: struts2-jquery-grid paramquery

我想请求帮助来验证ParamQuery Library的行为,我不确定可以与哪些相关:

我正在尝试根据一年中的每个星期实施一个ColModel,这个ColModel是dinamic并且将根据年份而改变,因为每周将有不同的每周日期,并且每周将在不同的日期开始。< / p>

我已使用网站上的一个示例成功实现了与动态模型连接的静态colModel。

使用的示例如下:https://paramquery.com/demos/editing_instant

对于这个确切的模型,我使用PHP根据所选日期附加新列。使用以下结构:

ColModelArray

此ColModel使用PHP正确设计,并且大部分时间都能正确显示(请参阅附件)。

DataVisualization is correct

但是,当更改屏幕大小或通过滚动表格时,标题将开始节流并显示不正确:

Column headers start to display incorrectly

有谁知道如何解决这个问题?或者是否与显示属性有关?

用于生成周和日的PHP代码:

$respuesta = array();
$semanaAct = 55;
$CambioSemana = 0;

$Fin = '2018-02-26';

$begin = new DateTime( '2018-02-01' );
$end = new DateTime( $Fin );
$Realend = new DateTime( $Fin );
$end = $end->modify( '+1 day' ); 
//$begin = $begin->modify( '-1 day' );

$interval = new DateInterval('P1D');
$daterange = new DatePeriod($begin, $interval ,$end);

foreach($daterange as $date){
    $SemanaFecha = $date->format("W");
    if($SemanaFecha==$semanaAct){
        $dias[] = array("title" =>$date->format("d-m"),"week" => $date->format("W"));
        $semanaar["colModel"]= $dias;
        array_push($respuesta, "Day: ".$date->format("d-m"). " Week: ".$date->format("W") );
        $CambioSemana = 2;
    }
    else{
        if($CambioSemana == 2){
            array_push($rows, $semanaar);
        }
        $semanaAct = $date->format("W");
        $semanaar= ["title"=> "Week ".$semanaAct, "dataType"=> "string","colModel"=> ""];
        $ContadorSemanas++;

        $dias = array();
        $dias[] = array("title" =>$date->format("d-m"),"week" => $date->format("W"));
        $semanaar["colModel"]= $dias;
        $CambioSemana = 1;
    }

    if( $date->format("d-m") == $Realend->format("d-m") ){
        array_push($respuesta, "Final 11");
        array_push($rows, $semanaar);
    }
    //array_push($respuesta, "Semana: ".$SemanaFecha);

}
return "[{\"columns\":".json_encode($GLOBALS['rows']). "}]";

生成ColModel后,将使用以下内容刷新表:

    var obj1 = $.parseJSON(result);
    //console.log(obj1);
    var columns = obj1[0].columns;
    $("#grid_editing").pqGrid( "option" , "colModel", colModelTemp );
    $grid.pqGrid( 'refresh' );

1 个答案:

答案 0 :(得分:0)

它与JavaScript上的VirtualX属性有关,通过删除此选项,滚动效果很好。