首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Bootstrap模态上调用两次以上的回调函数

在Bootstrap模态上调用两次以上的回调函数
EN

Stack Overflow用户
提问于 2013-11-14 04:59:09
回答 2查看 9.8K关注 0票数 4

我有问题,当创建自定义的JQuery插件,将显示引导模式对话框。自定义插件需要回调函数作为其参数。

问题是当模态对话框调用两次,回调也调用两次,等等。

在这里,代码:

代码语言:javascript
运行
复制
<a href="#" class="confirm_delete">test modal</a>

<div class="modal fade" id="general_modal" tabindex="-1" role="dialog" aria-labelledby="general_modalLabel" aria-hidden="true">
<div class="modal-dialog">
    <div class="modal-content">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
             <h4 class="modal-title" id="general_modal_title">Set Title Here</h4>

        </div>
        <div class="modal-body">set modal content here</div>
        <div class="modal-footer">
            <button type="button" class="btn btn-default close_button" data-dismiss="modal">Close</button>
            <button type="button" class="btn btn-primary action_button">Save changes</button>
        </div>
    </div>
</div>

Javascript

代码语言:javascript
运行
复制
(function ($) {
$.fn.showDialog = function (options, callback) {
    $('#general_modal').modal();
    $('#general_modal .action_button').on('click', function () {
        callback();
    });
}
}(jQuery));

$('.confirm_delete').click(function (e) {
    e.preventDefault();
    $(this).showDialog(null, function () {
        alert('xxx');
    });

});

演示:http://jsfiddle.net/kJn47/2/

EN

Stack Overflow用户

发布于 2016-08-24 22:11:41

您可以针对on()调用one():

代码语言:javascript
运行
复制
$('#general_modal .action_button').unbind().one('click', function () {

根据文件:

.one()方法与.on()相同,只是给定元素和事件类型的处理程序在第一次调用后是不绑定的。例如:

http://jsfiddle.net/kJn47/47/

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19969896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档