删除令牌时 Bootstrap 的令牌字段无法获取 "click" 事件

Tokenfield for Bootstrap can not get "click" event when delete a token

当我想使用 Bootstrap 的 Tokenfield 删除令牌时,我想获得 "click" 事件。我只能为现有令牌获取 "click" 事件,但不能获取动态生成的事件。

// working for existing token
$('.close').on('click', function(){
    alert('OK!');
});

// not working
$(document).on('click', 'a.close', function(){
    alert('delete');
});

详情请看这个jsfiddle

正常,你新建一个dom的元素。但是你的 $('.close') 已经初始化了。

所以你可以尝试做类似的事情:

参见 jsfiddle http://jsfiddle.net/rns3hang/14/

$(document).ready(function() {   
    $('#tokenfield').tokenfield({
      autocomplete: {
        source: ['red','blue','green','yellow','violet','brown','purple','black','white'],
        delay: 100
      },
      showAutocompleteOnFocus: true
    });

    $("form").submit(function(e) {
        e.preventDefault();
        $('.form-data').text( $('#tokenfield').val());
    });
    close();


});

function close() {
    $('.close').on('click', function(){
                alert('OK!');
        });

    $(document).on('click', 'a.close', function(){
         alert('delete');
        });

}

$('input').change(function() {
close();
})