如何将记录添加到jTable

How to add record to jTable?

本文关键字:jTable 添加 记录      更新时间:2023-09-26

我可以知道如何从json或数组向jtable添加记录吗?

我只能从API参考中找到两种方法

我尝试了两种,但都不起作用,它总是显示"没有可用的数据!"

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="jqueryui/ui/jquery-ui.js"></script>
<script src="jquery.jtable.js"></script>
<link rel="stylesheet" type="text/css" href="themes/basic/jtable_basic.css" />
<script>
jQuery(document).ready
(
    function()
    {
        var jt=$('#jt').jtable
        (
            {
                title: 'this is title',
                fields: {
                    a: {
                        title: 'a'
                    },
                    b: {
                        title: 'b'
                    }
                }
            }
        );
        jt.jtable('load',{a:'aaa',b:'bbb'});
        jt.jtable('addRecord', {
            record: {
                a:'aaa',b:'bbb'
            }
        });
    }
);
</script>
</head>
<body>
<div id="jt">
</div>
</body>
</html>

load方法用于从服务器检索表中的数据。如果您想手动添加数据,那么addRecord是正确的方法。但是:默认情况下,jtable也会尝试将数据添加到服务器中。如果您没有正确配置服务器,那么addRecord可能也会失败。

在这种情况下,如果您只想手动向客户端添加数据,请为addRecord提供clientOnly参数:

$('#jt').jtable('addRecord', {
   record: {
      a:'aaa',b:'bbb'
   },
   clientOnly: true
});

完整的工作演示:JSFIDDLE

是否尝试在本地添加数据?根据addRecord的文档,您需要指定clientOnly选项:

clientOnly(布尔值,默认值:false):如果为true,则jTable不会将记录添加到服务器,只会添加到表中。