0

我正在使用 jtable (jtable.org) 并创建了一个我想要的表。我不知道该怎么做是围绕动作做一个if语句'createAction'

jtable api中有一个对象叫做:

TotalRecordCount:记录总数(不仅是本页)。

我想要的是这样的:

if(TotalRecordCount < 5){ createAction: 'PersonActionsPagedSorted.php?orderId=&action=create', }

这是整个代码:

<script type="text/javascript">
    jQuery(document).ready(function () {
//Prepare jTable
jQuery('#ext_table').jtable({
//title: 'Create Extensions',
paging: true,
pageSize: 10,
sorting: true,
defaultSorting: 'Extension ASC',
actions: {
listAction: 'PersonActionsPagedSorted.php?orderId=&action=list',
createAction: 'PersonActionsPagedSorted.php?orderId=&action=create',
updateAction: 'PersonActionsPagedSorted.php?action=update',
deleteAction: 'PersonActionsPagedSorted.php?action=delete'
},
fields: {
PersonId: {
key: true,
create: false,
edit: false,
list: false
},
Name: {
title: 'Name',
width: '30%',
sorting:false,
//inputClass: 'validate[required]'
},
emailAddress: {
title: 'Email Address',
width: '20%',
sorting:false
}
});
//Load person list from server
$('#ext_table').jtable('load');
});
</script>
4

1 回答 1

0

首先,$recordCount 由 SQL 查询设置,类似于:

    $sql_select = "SELECT COUNT(*) AS RecordCount FROM myTable";
    $stmt = $conn->query($sql_select);
    $result = $stmt->fetch(PDO::FETCH_ASSOC);
    $recordCount = $result['RecordCount'];

然后将该设置变量插入到 $jTableResult 数组中,其中 ['TotalRecordCount'] 索引排序如下:

    $jTableResult['TotalRecordCount'] = $recordCount;

我这样说是为了澄清 $recordcount 变量已经可供 php 使用,而无需尝试从 jtable 本身中提取它(也就是说,它不是来自 jtable 的 GET 或 POST 数据)。

现在,在您指定字段和操作的 jtable 配置文件中,您可以执行以下操作:

    actions: {
                listAction: 'actions.php?action=list',
    <?php if($recordCount <5) { ?>
               createAction: 'actions.php?orderId=&action=create',
    <?php }else{ ?>
               createAction: 'actions.php?action=create',
    <?php } ?>
                updateAction: 'actions.php?action=update',
                deleteAction: 'actions.php?action=delete'
            },

我很肯定这可行,因为我使用相同的方法来检查 $_SESSION 变量以确定某些操作是否可供用户使用。

于 2013-06-13T20:50:31.287 回答