我尝试使用自己的样式模式模拟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>
然而,当我单击对话框中的按钮时,我收到错误&#34; clickCancel()/ clickOkay()未定义&#34;。
如何根据点击的按钮修复它以使其返回true或false?
答案 0 :(得分:2)
这是你想要的还是我弄错了?请随时查询。
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");
}
&#13;
<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>
&#13;