Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 唯一元素的JQuery模式触发器_Javascript_Jquery_Html_Twitter Bootstrap_Modal Dialog - Fatal编程技术网

Javascript 唯一元素的JQuery模式触发器

Javascript 唯一元素的JQuery模式触发器,javascript,jquery,html,twitter-bootstrap,modal-dialog,Javascript,Jquery,Html,Twitter Bootstrap,Modal Dialog,假设我有一个包含3个元素的集合 每个元素都有一个对应的删除按钮,我想在服务器上启动一个POST。现在我有它的设置,这样当按下“删除”按钮时,确认模式弹出“是”和“否”按钮。我对每个元素使用相同的模式 问题是,当我在模态中单击“是”时,我如何让它知道我单击的哪个删除按钮启动了模态 下面是一个链接,指向包含问题代码的要点 我尝试使用以下建议来实现以下目标: $('#hingle_dingle_0').on('click', function(e){ $('#confirmRemoveNet

假设我有一个包含3个元素的集合

每个元素都有一个对应的删除按钮,我想在服务器上启动一个POST。现在我有它的设置,这样当按下“删除”按钮时,确认模式弹出“是”和“否”按钮。我对每个元素使用相同的模式

问题是,当我在模态中单击“是”时,我如何让它知道我单击的哪个删除按钮启动了模态

下面是一个链接,指向包含问题代码的要点

我尝试使用以下建议来实现以下目标:

$('#hingle_dingle_0').on('click', function(e){
    $('#confirmRemoveNetwork').modal('toggle', $(this));
});
$('#confirmRemoveNetwork').on('show.bs.modal', function (event) {
    var button = $(event.relatedTarget) // Button that triggered the modal
    console.log(button);
});
但是,这将返回一个空集。看在上帝的份上,我不明白为什么它找不到这个事件


谢谢你的帮助

模式是自动定位的,因为您是在带有输入的表单中使用
打开它的。除非您告诉它不要,否则这将导致表单提交。只需将类型设置为按钮(而不是默认的提交):

您可以通过点击打开模式时引发的事件来捕获调用按钮:

$('#confirmRemoveNetwork').on('shown.bs.modal', function (e) {
    console.log(e.relatedTarget.id);
});

最后,确保您的ID是唯一的。您不能让两个“删除网络”按钮都使用相同id的
removenetworkbtn

请显示您是如何触发模式的。@Malk添加了一个小提琴来演示。我回家后将尝试此操作并发布结果,感谢您的及时。发布后立即看到表单中的按钮,感谢您对此的澄清。对于
e.relatedTarget.id
,这不起作用。我修复了ID(#remove_btn1),因此它们都是唯一的,但是在上面的函数中执行console.log(e)时,我没有发现任何关联目标,也没有发现任何提供关联的东西。我明白了。在我自己的工作表上实现,我得到了
[Log]对象(网络,第187行)currentTarget:div#confirmRemoveNetwork.modal淡入数据:未定义的delegateTarget:body.modal-open handleObj:Object isTrigger:3 jQuery214060397690225631:true名称空间:“bs.modal”名称空间\u re:/(^ | |)bs\(?:.*.\124;)modal(\.)/结果:未定义的目标:div#confirmRemoveNetwork.modal淡入时间戳:1446152046437 type:“已显示”uuu proto_uuu:Object
返回e。这里有一个到源代码的链接。我不知道这是否重要,但请尝试在脚本标记之前包含bootstrap.js。