首页 > 解决方案 > Jquery Datatable 内联编辑仅指定列

问题描述

目前我正在使用data tablejs 进行内联编辑,它工作完美,但我只想编辑指定的列行而不是所有列。例如,我有 4 列 id、姓名、电子邮件、联系人,我只想编辑电子邮件而不是所有其他人。

我使用了以下脚本但不起作用。

table = $('#example').DataTable({
    ajax: test,
     rowReorder: {
     dataSrc: 'order',
     selector: 'tr'
     },
    select: {
        style:    'os',
        selector: 'td:first-child'
    },
    columns: [{
      data: 'delete'
    }, {
      data: 'delete'
    }, {
      data: 'order'
    }
    , {
      data: 'agent_name', className: 'editable' 
    }

    , {
      data: 'add_mission'
    }

    , {
      data: ''
    }


    , {
      data: 'phone_number'
    }

    , {
      data: ''
    }

    , {
      data: false
    }
    ]
  });

在此我只允许 agent_name 列应该是可编辑的,而不是全部

标签: phpjquerydatatables

解决方案


您可以指定哪些列是可编辑的。通过提供 td 孩子。这是一个示例代码,用于仅向 td 7th child 提供编辑。

$('#table').on( 'click', 'tbody td:nth-child(7)', function (e) {
       editor.inline( this );
} );

推荐阅读