当前位置:首页 > 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文件处理表单提交事件,验证输入并模拟登录过程。

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保存登录状态,实现页面刷新后保持登录。

// 登录成功后保存状态
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;
}

js实现简单的登陆功能

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

相关文章

uniapp实现选项卡功能

uniapp实现选项卡功能

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

vue实现后台功能

vue实现后台功能

Vue 实现后台功能的方法 Vue.js 是一个流行的前端框架,适合构建后台管理系统。以下是实现后台功能的常见方法和步骤。 项目初始化 使用 Vue CLI 或 Vite 初始化项目: # V…

vue修改功能实现

vue修改功能实现

Vue 修改功能的实现方法 修改功能是 CRUD 操作中的重要部分,在 Vue 中可以通过多种方式实现。以下是几种常见的实现方案: 数据绑定与表单处理 使用 v-model 实现双向数据绑定,快速…

vue实现粘贴功能

vue实现粘贴功能

实现粘贴功能的基本方法 在Vue中实现粘贴功能通常涉及监听paste事件,并处理剪贴板数据。以下是一个基础实现示例: <template> <div @paste="hand…

h5实现手机摇一摇功能

h5实现手机摇一摇功能

实现原理 手机摇一摇功能基于设备加速度传感器(DeviceMotionEvent),通过监听设备的加速度变化来判断用户是否进行了摇晃动作。HTML5提供了相关API获取设备传感器数据。 基本实现步…

vue 实现备注功能

vue 实现备注功能

Vue 实现备注功能的方法 数据绑定与基础表单 在 Vue 中实现备注功能,可以通过 v-model 实现双向数据绑定。创建一个文本输入框或文本域,绑定到组件的 data 属性: <temp…