过去几个月我一直在研究jquery,喜欢在上面做新的事情。
最近,我使用我制作的模式弹出窗口(使用语义 ui,而不是使用 jquery ui)陷入自定义警报......
我想执行一个点击事件(效果很好)。但在此之前,我想调用此自定义警报
我制作的自定义警报是
function confirmAlert(msg,OnSuccess){
$('<div style="width:30%;height:15%;margin-left:-15em;" align="center" id="divretwhlsucc" class="ui tiny modal"> <div class="content"> <i class="checkmark big green box icon"></i>'+msg+'</div> <div class="actions"> <div class="ui black deny button">No</div><div class="ui positive right icon button">OK</div></div></div/>')
.modal({
closable : false,
onDeny : function(){
},
onApprove : function() {
return true;
}
})
.modal('show');
}
当我尝试完善点击事件时会弹出此模式(如下所示)
$("#btnwhlsuppdel").click(function(){
debugger;
confirmAlert("Are you sure you want to delete?",function(){
debugger;
var a = [];
var info = [];
var cboxes = $('input[name="suppcheck[]"]:checked');
var len = cboxes.length;
for (var i=0; i<len; i++) {
a[i] = cboxes[i].value;
$("#hiddwhlsuppgrp").val(a);
}
});
});
现在,即使我触发事件,它也不会等待自定义警报上的onApproval函数,而是直接执行。
我希望 customAlert 的行为类似于,如果我批准要执行的操作,请单击事件应该触发,否则它应该返回 false。
非常感谢对此的任何答案,因为我会在 Jquery 中学到更多!!
谢谢!
你可以试试波纹管。在此代码中,您需要将成功函数分配给 onApproved 回调。
function confirmAlert(msg,OnSuccess){
$('<div style="width:30%;height:15%;margin-left:-15em;" align="center" id="divretwhlsucc" class="ui tiny modal"> <div class="content"> <i class="checkmark big green box icon"></i>'+msg+'</div> <div class="actions"> <div class="ui black deny button">No</div><div class="ui positive right icon button">OK</div></div></div>')
.modal({
closable : false,
onDeny : function(){
},
onApprove : OnSuccess
})
.modal('show');
}
$("#btnwhlsuppdel").click(function(){
confirmAlert("Are you sure you want to delete?",function(){
var a = [];
var info = [];
var cboxes = $('input[name="suppcheck[]"]:checked');
var len = cboxes.length;
for (var i=0; i<len; i++) {
a[i] = cboxes[i].value;
$("#hiddwhlsuppgrp").val(a);
}
});
});