Cho một trang sử dụng Backbone.js để có một Bộ sưu tập được gắn với Chế độ xem (RowsView
, tạo ra một <ul>
) tạo Chế độ xem phụ (RowView
, tạo <li>
) cho mỗi Mô hình trong bộ sưu tập, tôi gặp sự cố khi thiết lập chỉnh sửa nội tuyến cho các mô hình đó trong bộ sưu tập.Tìm Chế độ xem Backbone.js nếu bạn biết Mô hình?
Tôi tạo ra một phương pháp edit()
trên quan điểm RowView
thay thế các nội dung li
với một hộp văn bản, và nếu người dùng nhấn tab
trong khi đó hộp văn bản, tôi muốn kích hoạt các phương pháp edit()
của Xem tiếp theo trong danh sách.
Tôi có thể lấy mô hình của mô hình tiếp theo trong bộ sưu tập:
// within a RowView 'keydown' event handler
var myIndex = this.model.collection.indexOf(this.model);
var nextModel = this.model.collection.at(myIndex+1);
Nhưng câu hỏi là, làm thế nào để tìm ra Xem được gắn liền với mô hình đó. Chế độ xem phụ huynh RowsView
không giữ tham chiếu đến tất cả các Chế độ xem của trẻ em; nó render()
phương pháp chỉ là:
this.$el.html(''); // Clear
this.model.each(function (model) {
this.$el.append(new RowView({ model:model}).render().el);
}, this);
Tôi có cần phải viết lại nó để giữ một mảng riêng biệt của con trỏ đến tất cả các RowView
là nó có theo nó? Hoặc là có một cách thông minh để tìm xem có một mô hình được biết đến gắn liền với nó?
Dưới đây là một jsFiddle của toàn bộ vấn đề: http://jsfiddle.net/midnightlightning/G4NeJ/