当前位置:首页 > JavaScript

js实现确认

2026-02-01 20:50:50JavaScript

实现确认弹窗的方法

在JavaScript中,确认弹窗可以通过内置的confirm()函数实现。该函数会显示一个带有指定消息和"确定"/"取消"按钮的对话框。

js实现确认

let result = confirm("您确定要执行此操作吗?");
if (result) {
    // 用户点击了"确定"
    console.log("操作已确认");
} else {
    // 用户点击了"取消"
    console.log("操作已取消");
}

自定义确认对话框

如果需要更美观的确认对话框,可以创建自定义模态框:

js实现确认

<div id="customConfirm" style="display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:1000;">
    <div style="background:white; width:300px; margin:100px auto; padding:20px; border-radius:5px;">
        <p id="confirmMessage">确认执行此操作吗?</p>
        <button id="confirmOk">确定</button>
        <button id="confirmCancel">取消</button>
    </div>
</div>

<script>
function showConfirm(message, callback) {
    const dialog = document.getElementById('customConfirm');
    const msg = document.getElementById('confirmMessage');
    msg.textContent = message;
    dialog.style.display = 'block';

    document.getElementById('confirmOk').onclick = function() {
        dialog.style.display = 'none';
        callback(true);
    };

    document.getElementById('confirmCancel').onclick = function() {
        dialog.style.display = 'none';
        callback(false);
    };
}

// 使用示例
showConfirm("确认删除此项吗?", function(result) {
    if(result) {
        console.log("删除操作已确认");
    } else {
        console.log("删除操作已取消");
    }
});
</script>

使用第三方库实现确认

流行的UI库如SweetAlert2提供了更强大的确认对话框功能:

// 引入SweetAlert2库后
Swal.fire({
    title: '确认操作',
    text: "您确定要执行此操作吗?",
    icon: 'warning',
    showCancelButton: true,
    confirmButtonText: '确定',
    cancelButtonText: '取消'
}).then((result) => {
    if (result.isConfirmed) {
        console.log("操作已确认");
    }
});

Promise风格的确认实现

现代JavaScript可以使用Promise封装确认逻辑:

function confirmPromise(message) {
    return new Promise((resolve) => {
        const result = confirm(message);
        resolve(result);
    });
}

// 使用示例
confirmPromise("确认提交表单吗?")
    .then(confirmed => {
        if(confirmed) {
            document.getElementById('myForm').submit();
        }
    });

每种方法适用于不同场景,内置confirm()简单快捷,自定义对话框提供更好的用户体验,第三方库提供丰富的功能,Promise风格适合现代异步编程。

标签: js
分享给朋友:

相关文章

js实现计算器

js实现计算器

实现基础计算器功能 使用JavaScript创建一个基础计算器需要处理数字输入、运算符逻辑和结果显示。以下是一个简单的实现示例: let currentInput = '0'; let previo…

js实现复制到剪贴板

js实现复制到剪贴板

使用document.execCommand方法(传统方式,已废弃但部分浏览器仍支持) 该方法适用于旧版浏览器,但已被标记为废弃。执行前需确保文本已被选中: function copyToClipb…

js防抖和节流实现

js防抖和节流实现

防抖(Debounce)的实现 防抖的核心思想是在事件被触发后,延迟执行回调函数。如果在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口大小调整等场景。 function debounce…

js实现密码

js实现密码

密码强度验证 使用正则表达式验证密码强度是一种常见方法。以下代码检查密码是否包含大小写字母、数字和特殊字符,且长度至少为8位: function checkPasswordStrength(pass…

js实现的游戏

js实现的游戏

JavaScript 游戏开发基础 JavaScript 是开发网页游戏的流行选择,因其无需插件即可在浏览器中运行。以下是一些关键技术和资源: HTML5 Canvas Canvas 提供了绘制图形…

js实现 拖动

js实现 拖动

实现拖动的步骤 HTML 结构 创建一个可拖动的元素和一个放置区域: <div id="draggable" draggable="true">拖动我</div> <d…