увеличить ширину таблицы jqgrid - PullRequest
0 голосов
/ 06 декабря 2011

Я новичок в jqgrid и хотел бы увеличить ширину jqgrid.Я увеличил ширину столбца, но ширина сетки не увеличивается.Я использую php jqgrid.

Есть ли какие-либо параметры для передачи этой функции: =

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

или Как я могу это сделать?

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 06 декабря 2011

Ваш вопрос в основном касается коммерческой версии jqGrid, которую я не знаю.Основная проблема существует и в jqGrid.jqGrid имеет параметр width , который можно использовать для определения ширины сетки.Я полагаю, что вы должны использовать (или уже использовать) $grid->setGridOptions для определения опции.Еще одна опция, которую можно использовать дополнительно: autowidth, которая будет перезаписывать значение width, рассчитанное на основе размера родительского элемента сетки.Вам может быть важен другой важный параметр: shrinkToFit, значение по умолчанию которого равно true.Это означало, что свойства width для столбца не будут использоваться в качестве точной ширины столбца в пикселях.Вместо этого свойства width будут использоваться для определения только пропорции между ширинами столбцов.Если ширина столбца какого-либо столбца не должна изменяться, вы должны включить свойство fixed: true в colModel для соответствующего определения столбца.Если вы хотите иметь точную ширину столбца для всех столбцов (как это определено в width свойствах элементов colModel), вам следует использовать параметр jqGrid shrinkToFit: false.Попробуйте включить настройку в вызове $grid->setGridOptions.

0 голосов
/ 14 марта 2013

Вы можете использовать следующий код php:

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

У меня была такая же проблема, моя сетка по умолчанию принимала 650px с.Итак, я проверяю некоторый блог, а также 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;
?>
...