【发布时间】:2015-03-01 09:24:45
【问题描述】:
我正在关注这个 (Bootstrap modal to confirm table row delete) 但我不知道为什么,但模式对话框没有出现。
我希望基本上做同样的事情,虽然我的表是由我的 jQuery 代码动态创建的:
$("#guests_table > tbody:last").append(
"<tr class='btnDelete' data-id='" + guest.guest_id + "'>"
+ "<td>" + guest.guest_first_name + "</td>"
+ "<td>" + guest.guest_last_name + "</td>"
+ "<td>" + guest.guest_email + "</td>"
+ "<td>" + "<a href='editguest.html?guestId=" + guest.guest_id + "&hostId=" + hostId + "®istryId=" + guest.registry_id + " '>"
+ "<img src='images/edit26.png' height='60%' width='60%'></a></td>"
+ "<td><button class='btnDelete' href=''>delete</button></td>"
+ "</tr>");
});
在 HTML 页面的头部:
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
模态对话框:
<!-- start: Delete Coupon Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog"
aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"
aria-hidden="true">×</button>
<h3 class="modal-title" id="myModalLabel">Warning!</h3>
</div>
<div class="modal-body">
<h4>Are you sure you want to DELETE?</h4>
</div>
<!--/modal-body-collapse -->
<div class="modal-footer">
<button type="button" class="btn btn-danger" id="btnDelteYes" href="#">Yes</button>
<button type="button" class="btn btn-default" data-dismiss="modal">No</button>
</div>
<!--/modal-footer-collapse -->
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->
JS页面中的按钮调用:
$('btn.btnDelete').on('click', function (e) {
e.preventDefault();
var id = $(this).closest('tr').data('id');
$('#myModal').data('id', id).modal('show');
});
$('#btnDelteYes').click(function () {
var id = $('#myModal').data('id');
$('[data-id=' + id + ']').remove();
$('#myModal').modal('hide');
});
在删除时,我有一个 API 调用来删除,但我只是在努力让对话框甚至出现。知道为什么吗?
谢谢
【问题讨论】:
-
在哪里绑定点击事件以显示模式对话框?
-
抱歉,不小心漏掉了。编辑主帖
-
确保
$('btn.btnDelete').on('click'代码在$("#guests_table > tbody:last").append(代码之后。 -
它仍然没有出现...不太清楚为什么
-
我已将 JSfiddle 中的代码复制到一个新的 HTML 页面上,并将 JavaScript 放入一个新的 JS 文件中,以排除任何导致它无法工作的情况,但它根本不显示,所以可能是我……
标签: javascript jquery twitter-bootstrap modal-dialog