【问题标题】:increase the width of jqgrid table增加jqgrid表格的宽度
【发布时间】:2012-01-14 00:57:28
【问题描述】:

我是 jqgrid 的新手,我想增加 jqgrid 的宽度。 我增加了列宽,但网格宽度没有增加。 我正在使用 php jqgrid。

有没有参数可以传递这个函数:=

$grid->renderGrid('#grid','#pager',true, null, null, true,true);

或者我该怎么做?

非常感谢。

【问题讨论】:

    标签: php json jqgrid jqgrid-php


    【解决方案1】:

    您的问题主要是关于 jqGrid 的商业版本,我不知道。 jqGrid 中也存在主要问题。 jqGrid 有width 参数,可用于定义网格宽度。我想您应该使用(或已经使用)$grid->setGridOptions 来定义选项。另一个可以额外使用的选项是autowidth,它将覆盖基于网格父级大小计算的width 值。其他重要选项可能对您很重要:shrinkToFit,默认值为true。这意味着该列的width 属性将不会用作以像素为单位的确切列宽。而不是width 属性将用于仅定义列宽之间的比例。如果不应更改某些列的列宽,则应在colModel 中包含fixed: true 属性以用于列的相应定义。如果您希望所有列都有精确的列宽(在colModel 的项目的width 属性中定义),您应该使用jqGrid 设置shrinkToFit: false。尝试在$grid->setGridOptions 调用中包含该设置。

    【讨论】:

      【解决方案2】:

      您可以使用以下 php 代码:

      // Set grid with 1000px by php
      $grid->setGridOptions(array("width"=>1000));
      

      我有同样的问题,我的网格默认为 650 像素。所以,我检查了一些博客和wiki,现在结果是:)

      这是我完整的带有自动网格宽度的 php 代码:

      <?php
      require_once '../../../jq-config.php';
      // include the jqGrid Class
      require_once ABSPATH."php/jqGrid.php";
      // include the driver class
      require_once ABSPATH."php/jqGridPdo.php";
      // Connection to the server
      $conn = new PDO(DB_DSN,DB_USER,DB_PASSWORD);
      // Tell the db that we use utf-8
      $conn->query("SET NAMES utf8");
      
      // Create the jqGrid instance
      $grid = new jqGridRender($conn);
      // SQL query
      $sql = <<<SQL
      SELECT *,
      CASE total_correct_answer 
      WHEN total_correct_answer=1 THEN 1
      WHEN total_correct_answer=2 THEN 3 
      ELSE 6 
      END AS points
      FROM 
      (
      SELECT COUNT(*) total_correct_answer, v.coupon_code_id, v.coupon_no, v.login_id, v.cc_match_id, v.name, v.contact_no, v.email, v.user_from
      FROM (
      SELECT p.login_id, ui.name, ui.contact_no,l.email,l.user_from,
      p.quiz_id p_quiz_id,p.question_bank_id p_question_bank_id, p.answer_id p_answer_id, 
      cc.quiz_id cc_quiz_id,cc.question_bank_id cc_question_bank_id, cc.answer_id cc_answer_id, 
      cc.match_id cc_match_id, p.coupon_code_id, cd.coupon_no  
      FROM prediction p
      INNER JOIN correct_answer cc 
      INNER JOIN `user_information` ui ON p.`login_id` = ui.`login_id` 
      INNER JOIN coupon_code cd ON cd.coupon_code_id = p.coupon_code_id
      INNER JOIN login l ON l.login_id = p.login_id
      WHERE cc.quiz_id=p.quiz_id AND cc.question_bank_id=p.question_bank_id 
      AND cc.answer_id=p.answer_id AND cc.match_id IN (SELECT match_id FROM `match` WHERE 
      start_time BETWEEN DATE_ADD(NOW(), INTERVAL -7 DAY) AND NOW())
      ) v GROUP BY v.coupon_code_id ORDER BY v.login_id DESC 
      ) a 
      SQL;
      // Write the SQL Query
      $grid->SelectCommand = $sql;
      // Set output format to json
      $grid->dataType = 'json';
      // Let the grid create the model
      $grid->setColModel();
      // Set the url from where we obtain the data
      $grid->setUrl('grid.php');
      // Set alternate background using altRows property
      $grid->setGridOptions(array( 
          "rowNum"=>10, 
          "sortable"=>true, 
          "rownumbers"=>true,
          "width"=>'auto',
          "altRows"=>true, 
          "multiselect"=>true, 
          "rowList"=>array(10,20,50), 
          )); 
      // Change some property of the field(s) 
      $grid->setColProperty("total_correct_answer", array("label"=>"Answer", "width"=>80));
      $grid->setColProperty("coupon_code_id", array("label"=>"Coupon Code", "width"=>80));
      $grid->setColProperty("coupon_no", array("label"=>"Coupon Number", "width"=>120));
      $grid->setColProperty("login_id", array("label"=>"User ID", "width"=>80));
      $grid->setColProperty("cc_match_id", array("label"=>"Match ID", "width"=>80));
      $grid->setColProperty("name", array("label"=>"User Name", "width"=>120));
      $grid->setColProperty("contact_no", array("label"=>"Contact No", "width"=>120));
      $grid->setColProperty("email", array("label"=>"User Email", "width"=>120));
      $grid->setColProperty("user_from", array("label"=>"User Mode", "width"=>120));
      $grid->setColProperty("points", array("label"=>"User Points", "width"=>120));
      // Enable navigator
      $grid->navigator = true;
      // Enable excel export
      $grid->setNavOptions('navigator', array("excel"=>true,"add"=>false,"edit"=>false,"del"=>false,"view"=>false));
      // Set different filename 
      $grid->exportfile = 'Prediction_Report.xls'; 
      // Enjoy
      $grid->renderGrid('#grid','#pager',true, null, null, true,true);
      $conn = null;
      ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-10-03
        • 1970-01-01
        • 2011-08-28
        • 2011-01-17
        • 2011-09-17
        • 1970-01-01
        • 2016-08-14
        • 2019-04-28
        相关资源
        最近更新 更多