【发布时间】:2019-04-05 17:27:46
【问题描述】:
如果用户检查了表格中的多行,我会尝试“提醒”他们。如果长度不等于一,我会显示一个可以关闭的警报。在用户关闭警报之前,我不想继续使用另一个模板。但是,它似乎是非阻塞的。
我已经查找了警报行为的描述,但我没有看到阻塞与非阻塞的描述。
<div class="alert alert-warning alert-dismissible collapse" id="selectonlyone"
roll="alert">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong>Warning!</strong> Select only one row to edit!
</div>
document.getElementById("btn3").onclick = function() {
var rowids = mytable.rows('.selected').data();
var pkids = [];
var arrayLength = rowids.length;
if(arrayLength==1){
...some code
}
else {
$('#selectonlyone').show();
document.location.href = "{% url 'show_template' %}" ;
}
};
【问题讨论】:
-
不确定 Bootstrap 4,但尝试使用 Modal;在 BS3 中,您可以设置它以便他们必须关闭它才能继续 (
data-backdrop="static" data-keyboard="false") -
是的,无论如何,模态可能比警报更能吸引用户的注意力。你回答了我的问题并给了我解决方案。如果您想要积分,请更改为答案。谢谢。
-
我应该补充一点,我必须删除 else 子句中的第二行。
else { $('#myModal').modal("show") }关闭模式后,您最终会进入同一页面以允许用户响应警告。 -
默认情况下,模态框会在您所在的屏幕上弹出;除非您的 JS 代码具有这样做的逻辑,否则没有关联的视图的重定向/更改。我会让你为这个添加一个自我答案;我只是在这个过程中给出了一个提示。干杯。
标签: bootstrap-4 blocking alerts