微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 如何在Recline JS中将记录附加到数据集?

我正在使用相当不错的 JavaScript库Recline http://okfnlabs.org/recline/它围绕Backbone构建.它也使用SlickGrid.

有很多例子,当然还有源代码也可以看看.我自己已经有很长的路要走了 – 写我自己的后端,并以一个光滑的视图显示数据.

但是,在示例中找不到的一件事是如何将记录附加到数据集中.我想绑定一个按钮的操作,所以我可以在数据集的末尾附加一个空记录,所以我可以使用slickgrid视图来编辑数据.

我似乎能够添加记录的唯一方法是往返服务器,但我不想这样做,因为这将涉及必须发布有效的数据,因为实际上我不想要空白我的数据集中的行.在通过REST将数据实际发布到服务器之前,我希望在浏览器客户端上添加几行可能.

此时的代码看起来像这样.

$(document).ready(function() {
var dataset = new recline.Model.Dataset({
     url: '/rest/monitors',backend: 'restlet',});

    dataset.fetch().done(function(dataset) { 



        var $el = $('#mygrid');
        var grid = new recline.View.SlickGrid({
          model: dataset,el: $el,state: {
                gridOptions: {editable: true,enableCellNavigation: true},columnsEditor: [
                             {column: 'monitoruntil',editor: Slick.Editors.Date },{column: 'enabled',editor: Slick.Editors.CheckBox },{column: 'owneremail',editor: Slick.Editors.Text},{column: 'normalinterval',editor: Slick.Editors.Text}
                           ],columnsWidth:[{column: 'owneremail',width: 100},{column: 'url',width: 300},{column: 'lastaccessed',width:100 }]
                 }
        });
        grid.visible = true;
        grid.render();


        //Bind Save Button to a function to save the dataset

        $('#savebutton').bind('click',function() {
              //alert($(this).text());
              dataset.save();
            });

        });;

})

使用此代码,我只能编辑和保存已经使用“restlet”后端提供的现有记录.

解决方法

它看起来你正在寻找dataset.records.add()

试用here在开发控制台:

var dataset = new recline.Model.Dataset({
      records: [
        {id: 0,date: '2011-01-01',x: 1,y: 2,z: 3,country: 'DE',title: 'first',lat:52.56,lon:13.40},{id: 1,]
    });
createExplorer(dataset);
var i=2;
setInterval(function() {dataset.records.add({id: i,lon:13.40});i++;},2000);

原文地址:https://www.jb51.cc/js/152749.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐