window.confirm弹窗 修改按钮文字
时间: 2023-11-06 10:04:34 浏览: 154
可以使用以下代码来修改 window.confirm 弹窗的按钮文字:
```
// 保存原始的 confirm 方法
var originalConfirm = window.confirm;
// 重写 confirm 方法
window.confirm = function(message) {
// 创建一个新的 Promise 对象
return new Promise(function(resolve, reject) {
// 创建一个确认弹窗
var confirmPopup = document.createElement("div");
confirmPopup.classList.add("confirm-popup");
// 创建文本节点,并插入到确认弹窗中
var messageNode = document.createTextNode(message);
confirmPopup.appendChild(messageNode);
// 创建确认按钮,并插入到确认弹窗中
var confirmButton = document.createElement("button");
confirmButton.classList.add("confirm-button");
confirmButton.innerText = "我的确认按钮文字";
confirmPopup.appendChild(confirmButton);
// 创建取消按钮,并插入到确认弹窗中
var cancelButton = document.createElement("button");
cancelButton.classList.add("cancel-button");
cancelButton.innerText = "取消";
confirmPopup.appendChild(cancelButton);
// 将确认弹窗插入到文档中
document.body.appendChild(confirmPopup);
// 绑定确认按钮的点击事件处理程序
confirmButton.addEventListener("click", function() {
// 从文档中移除确认弹窗
document.body.removeChild(confirmPopup);
// 调用原始的 confirm 方法,并传入 true
resolve(true);
});
// 绑定取消按钮的点击事件处理程序
cancelButton.addEventListener("click", function() {
// 从文档中移除确认弹窗
document.body.removeChild(confirmPopup);
// 调用原始的 confirm 方法,并传入 false
resolve(false);
});
});
};
// 在代码中使用修改后的 confirm 方法
window.confirm("请确认你的选择。").then(function(result) {
if (result) {
console.log("你点击了确认按钮。");
} else {
console.log("你点击了取消按钮。");
}
});
// 恢复原始的 confirm 方法
window.confirm = originalConfirm;
```
在上面的代码中,我们首先保存了原始的 confirm 方法,然后重写了它。重写后的 confirm 方法返回一个 Promise 对象,通过创建一个自定义的确认弹窗来替代原始的确认弹窗。在自定义的确认弹窗中,我们可以根据需要修改确认按钮的文字。最后,我们在代码中使用修改后的 confirm 方法,并在结果中处理用户的选择。
阅读全文