[英]Button inside modal is not working with Bootstrap 4 but is working with Bootstrap 3
我在laravel項目中工作,我可以使用按鈕來顯示模式,並且在該模式中有一個刪除按鈕,並且正在使用botstrap 3進行工作,但是在使用bootrsap 4時無法工作。
這是我的html代碼,這些CDN正在運行:
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
當我使用這些CDN時,我的模態中的刪除按鈕不再起作用:
<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<!-- jQuery library -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<!-- Popper JS -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<!-- Latest compiled JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
我的模態:
<div id="deleteModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-cliente">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-orden_de_compra"></h4>
</div>
<div class="modal-body">
<h3 class="text-center">¿Estas seguro de que quieres eliminar este pedido?</h3>
<br />
<form class="form-horizontal" role="form">
<div class="form-group">
<label class="control-label col-sm-2" for="id">id:</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="id_delete" disabled>
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-2" for="orden_de_compra">Orden de compra:</label>
<div class="col-sm-10">
<input type="name" class="form-control" id="orden_de_compra_delete" disabled>
</div>
</div>
</form>
<div class="modal-footer">
<button type="button" class="btn btn-danger delete" data-dismiss="modal">
<span id="" class='glyphicon glyphicon-trash'></span> Delete
</button>this delete button doesnt work with Bootstrap 4 but is working with bootstrap 3
<button type="button" class="btn btn-warning" data-dismiss="modal">
<span class='glyphicon glyphicon-remove'></span> Close
</button>
</div>
</div>
</div>
</div>
</div>
我的js:
<script type="text/javascript">
// delete a post
$(document).on('click', '.delete-modal', function() { //this function works with bootstrap 4
$('.modal-orden_de_compra').text('Delete');
$('#id_delete').val($(this).data('id'));
$('#orden_de_compra_delete').val($(this).data('orden_de_compra'));
$('#deleteModal').modal('show');
id = $('#id_delete').val();
orden_de_compra = $('#orden_de_compra_delete').val();
alert(id);
});
$('.modal-footer').on('click', '.delete', function() { //this function doesnt work with bootstrap 4
$.ajax({
type: 'DELETE',
url: 'posts/' + id,
data: {
'_token': $('input[name=_token]').val(),
},
success: function(data) {
toastr.success('Pedido eliminado exitosamente!', 'Notificación', {timeOut: 5000});
$('.item' + data['pedido_id']).remove();
alert('.item' + data['pedido_id']);
}
});
});
</script
好吧...我將同時摘錄兩個片段,以幫助您了解兩者之間的區別。
BS3:
$('.modal-footer').on('click', '.delete', function() { console.log("I'm here."); });
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.0.1/js/bootstrap.min.js"></script> <button type="button" data-toggle="modal" data-target="#deleteModal">Open Modal</button> <div id="deleteModal" class="modal fade" role="dialog"> <div class="modal-dialog"> <div class="modal-cliente"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-orden_de_compra"></h4> </div> <div class="modal-body"> <h3 class="text-center">¿Estas seguro de que quieres eliminar este pedido?</h3> <br /> <form class="form-horizontal" role="form"> <div class="form-group"> <label class="control-label col-sm-2" for="id">id:</label> <div class="col-sm-10"> <input type="text" class="form-control" id="id_delete" disabled> </div> </div> <div class="form-group"> <label class="control-label col-sm-2" for="orden_de_compra">Orden de compra:</label> <div class="col-sm-10"> <input type="name" class="form-control" id="orden_de_compra_delete" disabled> </div> </div> </form> <div class="modal-footer"> <button type="button" class="btn btn-danger delete" data-dismiss="modal"> <span id="" class='glyphicon glyphicon-trash'></span> Delete </button>this delete button doesnt work with Bootstrap 4 but is working with bootstrap 3 <button type="button" class="btn btn-warning" data-dismiss="modal"> <span class='glyphicon glyphicon-remove'></span> Close </button> </div> </div> </div> </div> </div>
在查看了“ 遷移到v4”文檔后,並沒有發現任何關於此的絕對信息……
我最終通過比較v4標記以查找%&*可能有何不同來找到它。
這是相當微妙的...我不知道class="modal-cliente"
用途是什么...潛在的錯誤並不影響v3。 但是看來這是v4的問題。 role="document"
可能也很重要...抱歉,我無法更詳細地解釋。 ;)
在下面的標記中查找2條稍作更改的行。
BS4:
$('.modal-footer').on('click', '.delete', function() { console.log("I'm here."); });
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script> <button type="button" data-toggle="modal" data-target="#deleteModal">Open Modal</button> <div id="deleteModal" class="modal fade" role="dialog"> <!-- Those 2 lines are slightly changed --> <div class="modal-dialog" role="document"> <div class="modal-content"> <!-- ============================ --> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal">×</button> <h4 class="modal-orden_de_compra"></h4> </div> <div class="modal-body"> <h3 class="text-center">¿Estas seguro de que quieres eliminar este pedido?</h3> <br /> <form class="form-horizontal" role="form"> <div class="form-group"> <label class="control-label col-sm-2" for="id">id:</label> <div class="col-sm-10"> <input type="text" class="form-control" id="id_delete" disabled> </div> </div> <div class="form-group"> <label class="control-label col-sm-2" for="orden_de_compra">Orden de compra:</label> <div class="col-sm-10"> <input type="name" class="form-control" id="orden_de_compra_delete" disabled> </div> </div> </form> <div class="modal-footer"> <button type="button" class="btn btn-danger delete" data-dismiss="modal"> <span id="" class='glyphicon glyphicon-trash'></span> Delete </button>this delete button doesnt work with Bootstrap 4 but is working with bootstrap 3 <button type="button" class="btn btn-warning" data-dismiss="modal"> <span class='glyphicon glyphicon-remove'></span> Close </button> </div> </div> </div> </div> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.