我正在尝试将元素的id传递给模态对话框。但是,事件并没有被解雇。我看过bootstrap jquery show.bs.modal event won't fire,但没有帮助。这就是我的工作。
我按如下方式构建了一组链接。
// invitations is an array of id's retrieved from the back-end
for (var i = 0; i < invitations.length; i++) {
var labelTxt = '<label><a href="#" data-toggle="modal" id=' + invitations[i] + ' data-target="#modalInvitation">' + invitations[i] + '</a></label>';
$('<div>').text($(labelTxt).appendTo('#myDiv'));
}
我的模态对话框如下
<div id="modalInvitation" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Invite</h4>
</div>
<div class="modal-body">
<button id="inviteBtn" type="button" class="btn btn-primary" data-dismiss="modal">Invite</button>
</div>
<div class="modal-footer">
<button type="button" class="btn" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
最后我调用event,show.bs.modal如下。
<script type="text/javascript">
$(function() {
$(document).on('show.bs.modal',
'#modalInvitation',
function() {
var inviteId = e.relatedTarget.id;
alert(inviteId);
});
});
然而,事件show.bs.modal没有被解雇。另请参阅此Send parameter to Bootstrap modal window?
答案 0 :(得分:1)
嗯,代码没有任何问题。在将代码剥离到最低限度时,我注意到我有两个版本的jQuery正在运行,就像这样
<script src="Scripts/jquery-1.10.2.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
删除后者解决了这个问题。如果我只运行后者,问题仍然存在。不知道为什么。