为了填充表格,SlickGrid需要一个数据数组。您可以在PHP中将其创建为字符串,并在创建SlickGrid时将其用于JavaScript中。
请注意;这是快速,肮脏,未经测试!
PHP
$data = '';
$i = 0;
$query = "
SELECT
`title`, `duration`, `percentComplete`, `start`, `finish`, `effortDriven`
FROM
`myTable`
";
$result = mysql_query($query);
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
$data .= '
data['.$i.'] = {
title: "'.$row['title'].'",
duration: "'.$row['duration'].'",
percentComplete: "'.$row['percentComplete'].'",
start: "'.$row['start'].'",
finish: "'.$row['finish'].'",
effortDriven: "'.$row['percentComplete'].'"
};
';
$i++;
}
的JavaScript
<script type="text/javascript">
var grid;
var columns = [
{id:"title", name:"Title", field:"title"},
{id:"duration", name:"Duration", field:"duration"},
{id:"%", name:"% Complete", field:"percentComplete"},
{id:"start", name:"Start", field:"start"},
{id:"finish", name:"Finish", field:"finish"},
{id:"effort-driven", name:"Effort Driven", field:"effortDriven"}
];
var options = {
enableCellNavigation: false,
enableColumnReorder: false
};
$(function() {
var data = [];
<?php echo $data; ?> //This is where we echo the PHP variable $data which contains our JavaScript array as a string.
grid = new Slick.Grid($("#myGrid"), data, columns, options);
})
</script>
来源
2010-09-23 09:21:07
Sam
感谢您的答复,山姆。请问,我需要知道,PHP会将数组输出为JSON还是默认的打印/回显? – Cogicero 2010-09-23 10:17:25
请在这里,我仍然需要一些帮助。我试图回显为JSON,我试着回声,都没有工作。请人吗? – Cogicero 2010-09-23 13:21:35
您无需将其作为JSON回显,它已通过此行'=$data?>'打印在正确的位置。在没有原生JSON函数的浏览器中使用 – Sam 2010-09-24 08:12:23