我正在使用Twitter Bootstrap的“警报”功能来显示用户通知,如下所示:

<div class="notification alert alert-info">
 <button type="button" class="close" data-dismiss="alert">&times;</button>
 My message goes here
</div>


这些通知将一直保留,直到用户将其关闭为止,因此,当用户单击“关闭”按钮时,我想向服务器发出一个ajax查询,指示应永久关闭该通知。

我正在使用jQuery的on()函数,如下所示:

$(document).on('click', '.notification .close', function (e) {
    alert('hi!');
    console.log(e);
    e.preventDefault();
});


这可以正常工作,但是我想知道是否有一种“ Bootstrappy”方式来做到这一点?

最佳答案

根据Bootstrap docs on alerts,我将绑定到对Bootstrap定制的close或close事件。

$(document).on('close', '.alert', function  ()
{
    var id = $(this).data('some_id');
    $.get('closed.php?id='+id);
});


通过API公开了两个事件:


关闭-立即触发
已关闭-在所有动画完成后触发。我选择关闭-这样您就可以立即执行关闭操作,并且如果他们在动画完成之前导航/关闭,它仍然会被隐藏。


数据属性是为了使服务器端脚本能够区分警报。标记为:

<div class="alert" data-some_id='foobar'>
    Close me!
</div>

10-05 21:04
查看更多