我正在使用来自jtable.org的jtable。问题是我有一个存储在我的数据库(MySQL)中的图像,我想使用jtable与其他列在网页上显示该图像。所有其他列正确显示但图像未显示。这是我的HTML代码:
<html>
<head>
<link href="themes/redmond/jquery-ui-1.8.16.custom.css" rel="stylesheet" type="text/css" />
<link href="Scripts/jtable/themes/lightcolor/blue/jtable.css" rel="stylesheet" type="text/css" />
<script src="scripts/jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="scripts/jquery-ui-1.8.16.custom.min.js" type="text/javascript"></script>
<script src="Scripts/jtable/jquery.jtable.js" type="text/javascript"></script>
</head>
<body>
<div id="PeopleTableContainer" style="width: 960px;"></div>
<script type="text/javascript">
$(document).ready(function () {
//Prepare jTable
$('#PeopleTableContainer').jtable({
title: 'Table of people',
actions: {
listAction: 'PersonActions.php?action=list',
updateAction: 'PersonActions.php?action=update'
},
fields: {
PersonId: {
key: true,
create: false,
edit: false,
list: false
},
Name: {
title: 'Product',
width: '20%'
},
SellingPrice: {
title: 'Selling Price',
width: '15%',
},
CostPrice: {
title: 'Cost Price',
width: '15%',
},
Remarks: {
title: 'Remarks',
width: '15%',
},
Stock: {
title: 'Stock',
width: '15%',
},
Pic: {
title: 'Image',
width: '50%',
edit: false
}
}
});
//Load person list from server
$('#PeopleTableContainer').jtable('load');
});
</script>
</body>
</html>
这是我对其他函数的SELECT查询:
//从数据库中获取记录
$result = mysql_query("SELECT * FROM people;");
//Add all records to an array
$rows = array();
while($row = mysql_fetch_array($result))
{
$rows[] = $row;
}
//Return result to jTable
$jTableResult = array();
$jTableResult['Result'] = "OK";
$jTableResult['Records'] = $rows;
print json_encode($jTableResult);
答案 0 :(得分:0)
当我遇到同样的问题时,以下链接有助于: Dynamically add images to JTable cells
抱歉,我希望我的旧代码仍然存在,而且我知道给予链接是不受欢迎的。也许其他任何绊到这个页面的人都会发现它很有用。
除非您没有正确检索图像,否则图像来自您的数据库不应该有所作为。尝试使用本地映像,如果您可以使用它,那么您已将问题隔离到不正确地从数据库中获取映像。在过去,我尝试过只有数据库中的图像链接指向我的ftp服务器。这意味着我不必在resultSet中传输图像,而只需通过FTP获取它。
答案 1 :(得分:0)
如果我们将图像的地址存储在数据库中,而不是简单地用图像的地址(链接)填充我们的列,我想出了另一种方法。