0

我想请求帮助以验证 ParamQuery 库的行为,我不确定与以下内容有关:

我正在尝试根据一年中的每一周实现一个 ColModel,这个 ColModel 是动态的,并且会根据年份而变化,因为每周会有不同的日期,并且每周将从不同的日期开始。

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

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

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

ColModelArray

这个 ColModel 是使用 PHP 正确设计的,并且在大多数情况下都能正确显示(请参阅附件)。

数据可视化是正确的

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

列标题开始显示不正确

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

用于生成星期和日期的 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' );
4

1 回答 1

0

它与 JavaScript 上的 VirtualX 属性有关,通过删除此选项,滚动可以完美运行。

于 2018-05-18T15:38:22.210 回答