जो मैं समझता हूं उससे, आपके कोड और आपके विवरण के आधार पर आप केवल पॉपओवर का उदाहरण बना रहे हैं लेकिन इसे कभी नहीं दिखा रहे हैं। मेरे पास लाइव डेमो काम कर रहा है लेकिन कॉफीस्क्रिप्ट के साथ नहीं (मैं व्यक्तिगत रूप से कॉफीस्क्रिप्ट से नफरत करता हूं), आप नीचे दिए गए कोड और this jsfiddle पर देख सकते हैं।
data1.json
{"content": "lorem ipsum dolor sit amet"}
index.html
<div class="container">
<div class="row">
<button class="btn" data-target="popover">Popover</button>
</div>
<div class="row"> </div>
<div class="row">
<button class="btn" data-action="change-content">Change Content</button>
</div>
</div>
main.js
var Main = Backbone.View.extend({
model: null,
item: null,
popover: false,
events: {
'click .btn[data-target]': 'button_click',
'click .btn[data-action="change-content"]': 'change_content'
},
initialize: function() {
_.bindAll(this);
this.model = new PopoverModel();
this.model.view = new PopoverContentView({model: this.model});
this.item = this.$('.btn[data-target]');
this.item.popover({
html: true,
content: this.model.view.render().el
});
},
button_click: function(event) {
if (!this.popover) {
this.model.url = 'js/data1.json';
this.model.fetch({
success: this.model_fetched
});
} else {
this.popover = false;
}
},
model_fetched: function() {
if (!this.popover) {
this.item.popover('show');
} else {
this.item.popover('hide');
}
this.popover = !this.popover;
},
change_content: function(event) {
this.model.set('content', 'Some random content... ' + parseInt(Math.random() * 10));
}
});
var PopoverModel = Backbone.Model.extend({
defaults: {
content: ''
}
});
var PopoverContentView = Backbone.View.extend({
initialize: function() {
_.bindAll(this);
this.listenTo(this.model, 'change', this.render);
},
render: function() {
this.$el.html(_.template('<%= content %>', this.model.toJSON()));
return this;
}
});
var main = new Main({
el: '.container'
});
स्रोत
2013-02-07 03:44:17
क्या आपने पॉपओवर पर अपना दृश्य जोड़ने के बाद 'प्रतिनिधि एवेन्ट्स()' चलाने की कोशिश की है? – deleterOfWorlds
हां, मैंने कोशिश की लेकिन सफलता के बिना – Georgi
मैं इस मुद्दे पर घंटों तक फंस गया हूं। क्या आपको एक समाधान मिला? धन्यवाद दोस्त! –