如果用户检查表中的多个行,我将尝试“警告”用户。如果长度不等于1,我会显示一条警报,可以将其关闭。在用户关闭警报之前,我不想继续使用其他模板。但是,它似乎是非阻塞的。
我一直在寻找有关警报行为的描述,但是我看不到关于阻塞与不阻塞的描述。
<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' %}" ;
}
};
答案 0 :(得分:1)
不,它们不会阻止。在蒂姆的建议下,我改用了情态。模态也不会阻塞。也就是说,“ else”子句的执行将继续,但是将出现模式,并且用户将无法继续操作,直到他们关闭模式。当他们关闭它时,用户将保留在原始页面上。无论如何,模态对于用户来说可能更引人注意。再次感谢蒂姆。
<div class="modal fade" tabindex="-1" id="myModal" role="dialog" data-backdrop="static" data-keyboard="false" aria-labelledby="exampleModalLabel" data-toggle="modal" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Warning!</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<p>Select only one row to edit!</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
</div>
</div>
</div>
</div>
document.getElementById("btn3").onclick = function() {
var rowids = mytable.rows('.selected').data();
var pkids = [];
var arrayLength = rowids.length;
if(arrayLength==1){
some code...
}
else {
$('#myModal').modal("show")
}
};