Twitter bootstrap 3 当我以编程方式调用modal时,如何将参数传递给它?

Twitter bootstrap 3 当我以编程方式调用modal时,如何将参数传递给它?,twitter-bootstrap-3,modal-dialog,parameter-passing,Twitter Bootstrap 3,Modal Dialog,Parameter Passing,我像这样以编程方式调用引导模式 $('confirmModal').modal() 但当我这样做时,“事件”出现在: $('confirmModal').on('show.bs.modal',函数(事件){ var按钮=$(event.relatedTarget); }) 没有“relatedTarget”,但我需要它。如何使用$('#confirmModal').modal()传递它。您不能设置relatedTarget,它是事件的只读属性show.bs.modal是由引导模式本身触发的,

我像这样以编程方式调用引导模式

$('confirmModal').modal()
但当我这样做时,“事件”出现在:

$('confirmModal').on('show.bs.modal',函数(事件){
var按钮=$(event.relatedTarget);
})

没有“relatedTarget”,但我需要它。如何使用$('#confirmModal').modal()传递它。

您不能设置
relatedTarget
,它是事件的只读属性<代码>show.bs.modal是由引导模式本身触发的,因此无论哪种方式,您都会迷失方向

但是为什么不以编程方式触发模式触发按钮的
单击事件,这与调用
模式()
完全相同,然后出现
相关目标

$(“#按钮”)。单击();
假设您有如下格式良好的“模式触发按钮”:

显示模式
请参见此处->尽管无法将第二个参数传递给充当相关目标的
modal()

$('#confirmModal').modal('show', $('#someButton'));
然后,您可以使用事件处理程序,因为它将由按钮或任何东西触发:

$('#confirmModal').on('show.bs.modal', function (event) {
   var button = event.relatedTarget; // should be set now
})

这至少适用于Bootstrap 3.3.x,我想也适用于4.0.x。

如果您在页面加载时调用modal,如
$(“#confirmModal”).modal()
,那么将不会有
$(event.relatedTarget)
$(event.relatedTarget)
仅当您单击模式触发器按钮打开模式时才起作用。是否无法传递?我不称之为内部页面加载,而是称之为另一个html对象上的内部单击事件。有没有办法把参数传递给事件?答案不错,但我想用另一个JS传递参数。很遗憾,没有拐杖是不可能的。谢谢