0

我有以下代码

if(data.title != false) {
    $('#modal').find('.modal-header h3').html(data.title);
}
if(data.buttons != false) {
    $.each(data.buttons, function(i, button){
        $('.modal-footer').append('<button class="btn" id="btn_'+button.text+'">'+button.text+'</button>');

        if(jQuery.type(button.click) === 'function') {
            console.log('jQuery says it is a function')
            $('.modal-footer').off('click', '#btn_'+button.text).on('click', '#btn_'+button.text, button.click());
        }
    });
}

它是用于打开引导模式(对话框)的功能的一部分。我试图添加将自定义按钮添加到模态的能力,就像 jQuery 在他们的对话框中一样。

我这样发送:

makeBootstrapModal({
    buttons: [
        {
            text:'OK',
            click: function() {
                $('#modal').modal('close');
            }
        },
        {
            text:'Annuleren',
            click: function() {
                $('#modal').modal('close');
            }
        },
    ],
    title: 'Hallo',
});

标题已正确添加,并且在控制台中我知道 button.click 在我检查时是一个函数,但是当我尝试将其添加为单击事件时,出现以下错误:

TypeError: data[option] is not a function   

if (typeof option == 'string') data[option]()

这是我第一次使用这样的功能。有谁知道如何使这项工作?提前致谢!

4

1 回答 1

0

解决了。因为我习惯了 jQuery 对话框,所以我将close其作为模态函数。Bootstrap 模态仅将hide其作为再次关闭它的功能。现在效果很好。

于 2013-04-26T09:56:02.970 回答