我正在尝试用我自己风格的模式来模拟confirm() 功能。我有一个带有回调的函数:
function confirmChanges(callback) {
function clickOkay() {
callback(true);
}
function clickCancel() {
callback(false);
}
}
这部分是我需要confirmChanges函数返回true/false的地方:
if (unsavedChanges == true) {
j$('.confirm').showModal();
if (confirmChanges(function(result) {return result;}))
{
// Do stuff and return true
}
else
{
return false;
}
}
这是我用于模式的 HTML:
<div class="warningpop confirm">
<h3>Unsaved Changes!</h3>
<a id="modalContinue" value="Continue" onclick="clickOkay();"/>
<a id="modalCancel" value="Cancel" onclick="clickCancel();"/>
</div>
但是,当我单击对话框中的按钮时,出现错误“clickCancel()/clickOkay() 未定义”。
如何修复它,使其根据单击的按钮返回 true 或 false?
最佳答案
这是你想要的还是我弄错了?欢迎随时询问。
function getResponse(res, func) {
if(res) {
console.log(1);
//do something
} else {
console.log(2);
//do otherthing
}
/* If tou want to call some other function dynamically. */
func();
}
function one() {
console.log("calling function one");
}
function two() {
console.log("calling function two");
}
<div class="warningpop confirm">
<h3>Unsaved Changes!</h3>
<a id="modalContinue" value="Continue" onclick="getResponse(true, one);">Yes </a>
<a id="modalCancel" value="Cancel" onclick="getResponse(false, two);">No </a>
</div>
关于Javascript 按钮 OnClick 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40786014/