Javascript 通过MVC局部视图注入时,引导模式显示和隐藏事件未触发

Javascript 通过MVC局部视图注入时,引导模式显示和隐藏事件未触发,javascript,jquery,asp.net,asp.net-mvc,twitter-bootstrap,Javascript,Jquery,Asp.net,Asp.net Mvc,Twitter Bootstrap,在ASP.NET MVC 5中,我有一个id为#modal的引导模式,当满足某些条件时(为了简洁起见,省略了条件),该模式将作为视图的一部分加载。我在一个js文件中实现了#modal的显示的.bs.modal和隐藏的.bs.modal函数:main.js 到目前为止一切正常。但是,在不满足上述条件的场景中,作为部分视图的一部分,通过AJAX调用将模式注入视图的HTML中。模式与前面提到的模式完全相同(相同的#modalid,所有内容都相同)。但是,这次,main.js中的show.bs.moda

在ASP.NET MVC 5中,我有一个id为
#modal
的引导模式,当满足某些条件时(为了简洁起见,省略了条件),该模式将作为视图的一部分加载。我在一个js文件中实现了
#modal
显示的.bs.modal
隐藏的.bs.modal
函数:
main.js


到目前为止一切正常。但是,在不满足上述条件的场景中,作为部分视图的一部分,通过AJAX调用将模式注入视图的HTML中。模式与前面提到的模式完全相同(相同的
#modal
id,所有内容都相同)。但是,这次,
main.js
中的
show.bs.modal
hidden.bs.modal
函数没有启动。为什么会这样?

main.js
中更改事件处理程序:

$('#modal').on('shown.bs.modal', function (e) { ... });
$('#modal').on('hidden.bs.modal', function (e) { ... });
要删除委派的事件处理程序,请执行以下操作:

$('body').on('shown.bs.modal', '#modal', function (e) { ... });
$('body').on('hidden.bs.modal', '#modal', function (e) { ... });
您可以使用随附的
#modal
父容器替换
body
。有关详细说明,请参阅中的链接。

您需要