markwoodall
markwoodall

Reputation: 53

How do I access the parent element within a Backbone view?

In Backbone model views, it seems $(this.el).parent() doesn't work. What is the best way to select the parent element from within a view?

I am setting el by using tagName: "li" for the view.

Upvotes: 5

Views: 6348

Answers (2)

Jake Dempsey
Jake Dempsey

Reputation: 6312

By default, Backbone assigns an empty div to your view and you can't access its parent, until it's been placed in the DOM through your render function.

You can use your approach of $(this.el).parent() if you are allowing Backbone to assign the default empty div. You can use the this.el.parent() if you are assigning el yourself in the constructor to a jQuery object.

Upvotes: 5

ryanmarc
ryanmarc

Reputation: 1680

What are you setting this.el to? If you're already setting it to a jquery element, for example:

this.el = $('#content');

then you don't need to wrap it again. Try changing what you have to:

this.el.parent()

Upvotes: 0

Related Questions