关于解雇twitter引导警报的Ajax请求

时间:2013-06-15 22:53:58

标签: javascript ajax twitter-bootstrap notifications

我正在使用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”的方法吗?

2 个答案:

答案 0 :(得分:3)

Bootstrap 3.0中,您需要使用命名空间事件名称:

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

答案 1 :(得分:2)

根据Bootstrap docs on alerts,我将绑定到关闭或关闭事件,这些事件是自定义的Bootstrap。

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

通过API公开了两个事件:

  1. 关闭 - 立即解雇
  2. 关闭 - 在所有动画完成后触发。我选择关闭 - 这样你就可以立即这样做,如果他们在动画完成之前导航/关闭,它仍然会被隐藏。
  3. 数据属性是能够让服务器端脚本区分警报。标记将是:

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