2011-05-12 13 views

Respuesta

5

Por defecto, Backbone asigna un vacío div a la vista y no se puede acceder a su padre, hasta que haya sido colocado en el DOM a través de su función de render.

Puede usar su aproximación de $(this.el).parent() si permite que Backbone asigne el valor predeterminado div. Puede usar el this.el.parent() si está asignando el usted mismo en el constructor a un objeto jQuery.

+0

Estoy usando la propiedad tagName para establecer la etiqueta a 'li'. Pero fue una cuestión de cuándo se colocó en el DOM. ¡Gracias! – markwoodall

0

¿Qué está configurando this.el to? Si ya lo está configurando en un elemento jquery, por ejemplo:

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

, entonces no necesita volver a envolverlo. Intenta cambiar lo que tiene que:

this.el.parent() 
+0

esto anula el soporte de la vista principal con lo que encuentre en el DOM con dicha ID – Daniel

+0

No, no es así. Ese primer fragmento de código fue solo un ejemplo de cómo se puede establecer el contenido de la vista. Si lees la respuesta sugerida, verás dónde sugiero cambiar lo que tienen a this.el.parent(). Además, si observa la respuesta aceptada por el usuario, verá que hace la misma sugerencia exacta. En el futuro, lea la publicación completa antes de la votación con una pregunta de casi 2 años que en realidad contiene la respuesta correcta. – ryanmarc

Cuestiones relacionadas