You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bootstrap模态框绑定hidden.bs.modal关闭事件不触发问题求助

Bootstrap模态框hidden.bs.modal关闭事件绑定失效问题解决

问题现象

无法为Bootstrap模态框绑定关闭事件,先后尝试通过模态框id #AfterBuy、modal-name属性值zakaz绑定hidden.bs.modal事件,关闭模态框时事件始终未触发,但模态框内按钮绑定的点击事件可正常运行。

初始绑定代码(无效)

按id绑定

$("#AfterBuy").on('hidden.bs.modal', function(){
    alert("Hello World!");
});

错误使用属性值作为id绑定

$("#zakaz").on('hidden.bs.modal', function(){
    alert("Hello World!");
});

注:第二段代码写法本身存在问题,zakaz是modal-name自定义属性的值,不是元素id,不能使用#选择器选取。

最终解决方案(事件委托绑定)

使用事件委托将事件绑定到document上,匹配对应属性的模态框元素,即可正常触发事件:

$(document).on('hidden.bs.modal','.modal[modal-name=zakaz]',function () {
    // 触发后执行的逻辑
});

关联模态框完整代码

<div class="modal actionmodal fade" id="AfterBuy" modal-name="zakaz" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <img src="<?php echo $cur_url; ?>img/logo.png" class="logo" alt="">
                <button type="button" OnClick="unknowntest();" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
            </div>
            <div class="modal-body">
                <div class="container">
                    <div class="row">
                        <div class="col-md-12">
                            <?php $elem = getPageTitle('18'); ?>
                            <div class="modal-title <?php echo $elem['title_tr'] ?>"><?php echo $elem['title'] ?></div>
                            <div class="greyline1"></div>
                        </div>
                    </div>
                    <div class="row">
                       <form>
                            <?php printPage('18'); ?>
                            <div class="col-md-12 zakaz-field">
                                
                            </div>
                            <div class="col-md-12">
                            
                                <div class="buttons mt-5">
                                    <?php $elem = getElement('zakaz_print'); ?>
                                    <a href="<?php echo $cur_url; ?>order-check" target="_blank" class="btn btn-dark <?php echo $elem['content_tr'] ?> printzakaz"><?php echo $elem['content'] ?></a>
                                    <?php $elem = getElement('zakaz_download'); ?>
                                    <a href="<?php echo $cur_url; ?>order-check?a=1" class="btn btn-dark downloadzakaz <?php echo $elem['content_tr'] ?>"><?php echo $elem['content'] ?></a>
                                    <?php $elem = getElement('zakaz_close'); ?>
                                   <button type="button" OnClick="unknowntest();" data-dismiss="modal" class="btn btn-dark <?php echo $elem['content_tr'] ?>"><?php echo $elem['content'] ?></button>
                                </div>
                            </div>
                       </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
<script>
function unknowntest() {
alert("Modal will be closed.");
//document.cookie = "sended-check=0";
}
</script>
</div>

内容的提问来源于stack exchange,提问作者Jusstarter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 17:27:03