這是我的標記:Twitter的引導:Popovers沒有顯示出來的第一次點擊,但出現在第二次點擊
<a href="#" class="reviews" id="like" rel="popover" data-content="" data-placement="right" data-original-title="Like episode">
<i class="icon-thumbs-up"></i>
Loved it
</a>(<span id="episode_likes">{{ episode_likes }}</span>
這是JavaScript:
$('a.reviews#like').click(function(e){
var element = $(this);
$.ajax({
url: '/episoderatings/like/',
type: 'POST',
dataType: 'json',
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
episode_number: current,
story: current_story
},
success: function(response){
if(response=='You have liked this episode'){
$('span#episode_likes').text(parseInt($('span#episode_likes').text())+1);
}
$(element).attr('data-content',response);
$(element).popover();
}
});
e.preventDefault();
});
問題是,當我點擊「喜歡」按鈕,彈出窗口不會在第一次點擊時顯示,所以我錯過了我是否喜歡該頁面的重要反應。當我點擊「喜歡」按鈕時,第二次彈出窗口出現,然後它從那裏開始保持它的切換行爲。並有想法?
你需要調用'popover'頁面加載時? '$('a.reviews#like')。click(...)。popover()' –
您是否嘗試過該解決方案?您是否可以在第二次點擊時隱藏彈出窗口? – markus
是的。我嘗試了答案。它僅適用於普通文本的彈出式窗口,但對於其數據內容作爲由Ajax響應生成的「html」的彈出式窗口不起作用。 – 2013-01-29 22:39:39