在表单提交时,我在第一次迭代中收到警报,但在提交表单时(之前关闭之后)警报不会再出现。 什么可能出错? 我曾尝试过以下方法:
<div id="messages" class="hide" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
<div id="messages_content"></div>
</div>
脚本
$('#myform').submit(function(e) {
$('#messages').removeClass('hide').addClass('alert alert-success alert-dismissible').slideDown().show();
$('#messages_content').html('<h4 class="usefont" style="text-align: center">Thank you message!</h4>');
$('#modal').modal('show');
e.preventDefault();
});
答案 0 :(得分:1)
这是我的解决方案,您需要删除data-dismiss
属性,并在关闭按钮内实现隐藏功能。
问题是data-dismiss
正在完全从DOM中删除元素!
$('#myform').on('submit', function(e) {
$('#messages').removeClass('hide').addClass('alert alert-success alert-dismissible').slideDown();
$('#messages_content').html('<h4 class="usefont" style="text-align: center">Thank you message!</h4>');
$('#modal').modal('show');
e.preventDefault();
});
$('#close').on('click', function(e) {
$('#messages').removeClass('alert alert-success alert-dismissible').addClass('hide').slideUp().hide();
$('#messages_content').html('');
$('#modal').modal('show');
e.preventDefault();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<div id="messages" class="hide" role="alert">
<button type="button" id="hide" class="close" aria-label="Close"><span id="close">×</span></button>
<div id="messages_content"></div>
</div>
<form action="" id="myform">
<button type="submit">submit</button>
</form>