2016-10-05 8 views
0

В моем приложении мне нужно показать индекс ввода данных в первом столбце данных и он должен работать после DnD (поэтому я полагаю, что столбец должен быть динамически обновлен). Но как это возможно в Webix datatable?Как показать индекс фактического элемента в datatacle?

В настоящее время я могу получить индекс вручную, используя getIndexById, но этот метод не работает в шаблоне столбца. Например:

/* inside the config */ 
    drag:true, 
    columns:[  
    { id:"index", template:function(obj){ 
     console.log(obj.id); 
     // doesn't work: 
     // console.log(datatable.getIdByIndex(obj.id)); 
    } }, 
    { id:"id" },  
    { 
     id:"title", fillspace:true, sort:"string"  
    } 
    ], 
    ready:function(){ 
    this.eachRow( 
     function (row){ 
     console.log(this.getIndexById(row)) // works 
     } 
    ) 
    } 
}); 

/* somewhere else */ 
console.log(datatable.getIdByIndex(4)); 

Code sample.

Возможно ли это вообще? Благодарю.

ответ

0

Чтобы получить индекс строки (ввод данных), вы должны определить свой шаблон индекса, как:

template: function(obj){ 
    return $$("dt").getIndexById(obj.id); } 

где «дт» является идентификатором вашего DataTable. Он автоматически изменяет индекс при выполнении любой операции DnD. Кроме того, проверьте фрагмент here.

+0

Ой, это была моя страшная ошибка, поскольку я пробовал обратный метод (/ __-;) Мне интересно, следует ли удалять эту тему, но спасибо вам! – drewney