Bootstrap Alert - show then hide - cannot show again
我有一个简单的隐藏可忽略的引导警报:
1 2 3 4 5 | <button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true"></span></button> <button type="button" id="getSelectedAssets" class="btn btn-primary">Show Selected Assets</button> |
设置按钮以运行显示隐藏警报的脚本:
1 2 | $("#selectedAssetsDetails").html('Selected Assets: '+values); $("#selectedAssets").show(); |
这在第一次显示警报时成功完成,但是如果用户关闭警报,则不会通过单击显示警报的按钮来再次显示警报。我假设:
1 | $("#selectedAssets").show(); |
将始终显示警报吗?
data-dismiss从HTML删除Div,您必须像这样设置"关闭按钮"的操作
1 2 3 | $('#getSelectedAssets').click(function() { $('#selectedAssets').show(); }); |
1 2 3 4 5 6 7 8 9 | <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> <button type="button" class="close" onclick="$('#selectedAssets').hide()" aria-label="Close"><span aria-hidden="true"></span></button> Alert <button type="button" id="getSelectedAssets" class="btn btn-primary">Show Selected Assets</button> |
警报的引导程序文档指出:
Just add data-dismiss="alert" to your close button to automatically give an alert close functionality. Closing an alert removes it from the DOM.
(我的重点)
这就是为什么
因此解决方案是删除
1 2 3 4 5 6 7 8 9 10 | let values = 'foo'; $('#closeAlert1').on('click', function() { $("#selectedAssets").hide(); }); $('#getSelectedAssets').on('click', function() { $("#selectedAssetsDetails").html('Selected Assets: '+values); $("#selectedAssets").show(); }); |
1 2 3 4 5 6 7 8 9 10 | <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"> <button type="button" id="closeAlert1" class="close" aria-label="Close"><span aria-hidden="true"></span></button> <button type="button" id="getSelectedAssets" class="btn btn-primary">Show Selected Assets</button> |