Ho la seguente configurazione:Backbone js: come rimuovere il tag extra in vista?
<div class="row">
<div></div>
....
</div>
e alla seguente vista:
var TestView = Backbone.View.extend({
tagName: "div",
template: $("#tests_template"),
initialize: function() {
_.bindAll(this, 'clickbtn');
},
events:
{
"click .btn": "clickbtn"
},
render: function() {
....
{
});
Il problema è, esso produce il seguente output:
<div><div class="row">...</div></div>
Come faccio a sbarazzarsi di il div esterno? Ho provato a rimuovere la proprietà tagName dalla vista ma mette ancora un div?
È comunque necessario assegnarlo nell'intializer? var TestView = Backbone.View.extend ({ el: $ ('. row') ecc? – firebird
Si può sempre impostare 'this.el' nell'inizializzatore, ma a quel punto tutti gli eventi sono stati collegati in modo da essere devo chiamare 'this.delegateEvents()' (vedi le modifiche) .Se non vuoi passarlo, puoi sempre scavalcare il costruttore e farlo lì prima di chiamare il "super". –