当前位置:首页 > JavaScript

js实现简单的登陆功能

2026-03-02 00:37:45JavaScript

实现登录功能的基本步骤

HTML部分需要创建表单,包含用户名和密码输入框以及提交按钮。

<!DOCTYPE html>
<html>
<head>
    <title>登录页面</title>
</head>
<body>
    <form id="loginForm">
        <div>
            <label for="username">用户名:</label>
            <input type="text" id="username" required>
        </div>
        <div>
            <label for="password">密码:</label>
            <input type="password" id="password" required>
        </div>
        <button type="submit">登录</button>
    </form>
    <div id="message"></div>
    <script src="login.js"></script>
</body>
</html>

JavaScript验证逻辑

创建login.js文件处理表单提交事件,验证输入并模拟登录过程。

js实现简单的登陆功能

document.getElementById('loginForm').addEventListener('submit', function(event) {
    event.preventDefault();

    const username = document.getElementById('username').value;
    const password = document.getElementById('password').value;
    const messageElement = document.getElementById('message');

    if (!username || !password) {
        messageElement.textContent = '用户名和密码不能为空';
        messageElement.style.color = 'red';
        return;
    }

    // 模拟验证逻辑
    if (username === 'admin' && password === '123456') {
        messageElement.textContent = '登录成功!';
        messageElement.style.color = 'green';
        // 实际项目中这里会跳转页面或设置登录状态
    } else {
        messageElement.textContent = '用户名或密码错误';
        messageElement.style.color = 'red';
    }
});

添加本地存储功能

可以使用localStorage保存登录状态,实现页面刷新后保持登录。

js实现简单的登陆功能

// 登录成功后保存状态
localStorage.setItem('isLoggedIn', 'true');
localStorage.setItem('username', username);

// 页面加载时检查登录状态
window.addEventListener('load', function() {
    if (localStorage.getItem('isLoggedIn') === 'true') {
        document.getElementById('loginForm').style.display = 'none';
        document.getElementById('message').textContent = 
            `欢迎回来, ${localStorage.getItem('username')}!`;
    }
});

添加密码显示切换功能

增强用户体验,添加密码可见性切换按钮。

<div>
    <label for="password">密码:</label>
    <input type="password" id="password" required>
    <button type="button" id="togglePassword">显示</button>
</div>
document.getElementById('togglePassword').addEventListener('click', function() {
    const passwordField = document.getElementById('password');
    const toggleButton = document.getElementById('togglePassword');

    if (passwordField.type === 'password') {
        passwordField.type = 'text';
        toggleButton.textContent = '隐藏';
    } else {
        passwordField.type = 'password';
        toggleButton.textContent = '显示';
    }
});

表单输入验证增强

添加更详细的输入验证,如长度限制和字符限制。

function validateInput(username, password) {
    const errors = [];

    if (username.length < 4) {
        errors.push('用户名至少需要4个字符');
    }

    if (password.length < 6) {
        errors.push('密码至少需要6个字符');
    }

    if (!/^[a-zA-Z0-9_]+$/.test(username)) {
        errors.push('用户名只能包含字母、数字和下划线');
    }

    return errors;
}

// 在提交处理函数中使用
const validationErrors = validateInput(username, password);
if (validationErrors.length > 0) {
    messageElement.textContent = validationErrors.join('\n');
    messageElement.style.color = 'red';
    return;
}

标签: 简单功能
分享给朋友:

相关文章

前端vue登录功能实现

前端vue登录功能实现

登录功能实现步骤 在Vue中实现登录功能通常需要结合后端API,以下是关键步骤和代码示例: 创建登录表单组件 <template> <div> <for…

实现简单vue

实现简单vue

实现一个简单的 Vue 框架 数据响应式系统 通过 Object.defineProperty 实现数据劫持,监听数据变化: function defineReactive(obj, key, va…

uniapp支付功能怎么实现

uniapp支付功能怎么实现

uniapp支付功能实现方法 准备工作 注册微信支付、支付宝等平台的开发者账号,获取必要的商户ID(mch_id)、API密钥(key)、应用ID(appid)等信息。确保项目已配置好相关支付SDK。…

uniapp实现选项卡功能

uniapp实现选项卡功能

实现选项卡功能的基本方法 在uniapp中实现选项卡功能通常需要使用uni-segmented-control组件或自定义样式结合swiper组件。以下是两种常见实现方式: 使用uni-segmen…

php 实现聊天功能

php 实现聊天功能

PHP 实现聊天功能的方法 使用 WebSocket 和 Ratchet 库 WebSocket 是实现实时聊天的理想选择。Ratchet 是一个 PHP 库,用于处理 WebSocket 连接。…

vue实现网页功能

vue实现网页功能

Vue 实现网页功能的核心方法 创建 Vue 项目 使用 Vue CLI 或 Vite 快速初始化项目。Vue CLI 适合传统项目,Vite 适合现代轻量级应用。 npm init vue@lat…