将row.add用于带有复选框的数据表

时间:2016-09-30 23:46:01

标签: javascript jquery checkbox datatable

我有以下代码用于填充和生成复选框数据表的行:

    var array = [...];
    $datatable = $('#datatable-checkbox');

    // checkboxes
    $datatable.dataTable({
      'order': [[ 1, 'asc' ]],
      'columnDefs': [
        { orderable: false, targets: [0] }
      ]
    });

    for(int i in array) {
        var name = array[i][0];
        var message = array[i][1];
        var num = array[i][2]; 

        $datatable.DataTable().row.add([
            name,
            message,
            num
        ]).draw( false );
    }

但是,行(名称)中的第一个数据字段似乎替换了复选框,就好像行是空的一样。

我的问题是,有没有办法在忽略第一列的同时将数据添加到一行?或者将复选框添加回第一列?

2 个答案:

答案 0 :(得分:1)

我能够通过以下方式修复它:

$datatable.DataTable().row.add([
    '<input type="checkbox"></input>',
    name,
    message,
    num
]).draw();

答案 1 :(得分:0)

当您使用数组填充行值时,只需插入空白值,然后使用public class MainActivity extends AppCompatActivity { ButtonChanger bc; ClickListener cl; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); bc = new ButtonChanger(this, this); cl = new ClickListener(this, this, bc); Button but; for(MyButton b : bc.buttons.buttons) { but = (Button)findViewById(b.getId()); but.setOnClickListener(cl); } Button start = (Button)findViewById(R.id.start_button); start.setOnClickListener(cl); getSupportActionBar().hide(); setContentView(R.layout.activity_main); } } 方法填充它

edit

回答您的问题$datatable.DataTable().row.add([ name, '', '' ]) 。是的,您可以在插入后使用以下内容编辑特定行的数据:

Or to add checkboxes back to the first column?