[英]How can I prevent a function from being called outside another function in Javascript?
[英]How can I prevent an confirmation from being called through a certain action?
我有以下代碼:
var noteName;
function reset() {
confirmation = confirm("Are you sure you'd like to delete " + noteName + "?");
if(confirmation === false) {
alert("Deletion Cancelled");
}
else if(localStorage.getItem('savetext') === null) {
alert("There is nothing to delete");
}
else {
alert("Delete Successful");
localStorage.removeItem('savetext');
document.getElementById("confirmation-Here").innerHTML = "Deleted";
}
}
我想要做的是,如果用戶按下刪除按鈕,它會輸出一個確認警報,用戶可以選擇取消 (false) 或按確定 (true) 繼續操作。 然而,雖然這確實有效,但當本地存儲已經空了時會出現問題,看到同一個用戶彈出窗口顯示“您確定要刪除未定義嗎?”很煩人。 未定義是因為在保存后,我已經設置了它以便用戶可以命名他們保存的文本。 但是通過本地存儲刪除文本,名稱本身已被刪除,因此返回為未定義。 問題是,如果本地存儲為空並且顯示未定義,我不希望出現共享彈出窗口。 我只是想讓它提醒:“沒有什么可以刪除的”。 就這樣。 變量“noteName”已經在代碼前面定義**
我想不出一種方法來重組我的代碼,以便在本地存儲中沒有任何內容時確認警報不會返回。 我該怎么辦? 我應該如何更改此代碼?
試試這個代碼
function reset() {
if (!localStorage.getItem("savetext")) return;
confirmation = confirm("Are you sure you'd like to delete " + noteName + "?");
if (!confirmation) {
alert("Deletion Cancelled");
} else {
alert("Delete Successful");
localStorage.removeItem("savetext");
document.getElementById("confirmation-Here").innerHTML = "Deleted";
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.