Я не очень хорошо знаю Backbone, поэтому вопрос.
Есть элемент коллекции:
// Модель данных для основной таблицы
App.Model.BaseRow = Backbone.Model.extend({
defaults: {
// Номер по пункту
NumberOfItem: '',
// Наименование
Name: '',
}
});
Есть коллекция этих эелементов:
//Список строк для основной таблицы
App.Collection.BaseTableBody = Backbone.Collection.extend({
model: App.Model.BaseRow
});
И представление для каждой строки
App.View.BaseRow = Backbone.View.extend({
initialize: function() {
this.listenTo(this.model, "change", this.render);
},
tagName: "tr",
className: "cssClass_BaseTableRow__tr",
events: {
"click": "tuggleSubTable",
},
template: template("id_BaseRowTemplate__script"),
render: function() {
this.$el.html( this.template( this.model.toJSON() ) );
return this;
},
tuggleSubTable: function(e){
console.log(e);
// Метод открывает подтаблицу если она не октрыта или закрывает ее если она открыта
// 1) Проверть открыта ли таблица
// 2) Да
// 3) Найти в коллекции подтаблицу и удалить ее из дом, поставить флаг что подтаблица закрыта
// this.model.remove.... - что то вроде того наверное
// 4) Нет
// 5) Произветсти запро к БД получить данные для подтаблицу
// 6) Отрендрить подтаблицу поставить флаг что подтаблица открыта
}
});
Мне надо в методе tuggleSubTable узнать по какому индексу в коллекции находится текущий элемент App.View.BaseRow. это нужно для того что бы в коллекцию вставить новую строку ниже текущей.