使用HTML和JavaScript实现随机点名系统

下面是一个使用HTML和JavaScript实现的随机点名系统。这个系统可以从一个学生名单中随机选择一个名字,并在页面上显示出来。

1.功能说明:

这个应用程序使用纯HTML和JavaScript实现。

  • 包含一个输入框用于输入学生姓名,多个姓名之间用逗号分隔。
  • 提供"添加学生"按钮将输入的学生姓名添加到列表中。
  • 提供"随机点名"按钮从列表中随机选择一个学生姓名并显示在页面上。
  • 使用alert提示用户操作结果。

2.代码展示

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>随机点名系统</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            background-color: #f4f4f9;
            margin: 0;
        }
        .container {
            text-align: center;
            background-color: white;
            padding: 40px;
            border-radius: 20px;
            box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
            width: 400px;
        }
        h1 {
            margin-bottom: 30px;
            color: #333;
        }
        input[type="text"] {
            width: 80%;
            padding: 15px;
            margin-bottom: 20px;
            border: 1px solid #ccc;
            border-radius: 10px;
            font-size: 16px;
        }
        button {
            padding: 15px 30px;
            background-color: #007bff;
            color: white;
            border: none;
            border-radius: 10px;
            cursor: pointer;
            font-size: 16px;
            margin: 0 10px;
        }
        button:hover {
            background-color: #0056b3;
        }
        #selected-name {
            font-size: 32px;
            margin-top: 30px;
            color: #333;
            font-weight: bold;
        }
        .message {
            margin-top: 20px;
            color: red;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>随机点名系统</h1>
        <input type="text" id="name-input" placeholder="请输入学生姓名,用逗号分隔">
        <br>
        <button onclick="addNames()">添加学生</button>
        <button onclick="pickRandomName()">随机点名</button>
        <div id="selected-name"></div>
        <div id="message" class="message"></div>
    </div>

    <script>
        let names = [];

        function addNames() {
            const input = document.getElementById('name-input').value;
            if (input.trim()) {
                const newNames = input.split(',').map(name => name.trim());
                names = [...names, ...newNames];
                document.getElementById('message').textContent = `已添加学生: ${newNames.join(', ')}`;
                setTimeout(() => {
                    document.getElementById('message').textContent = '';
                }, 3000);
                document.getElementById('name-input').value = '';
            } else {
                document.getElementById('message').textContent = '请输入有效的学生姓名';
                setTimeout(() => {
                    document.getElementById('message').textContent = '';
                }, 3000);
            }
        }

        function pickRandomName() {
            if (names.length === 0) {
                document.getElementById('message').textContent = '请先添加学生姓名';
                setTimeout(() => {
                    document.getElementById('message').textContent = '';
                }, 3000);
                return;
            }
            const randomIndex = Math.floor(Math.random() * names.length);
            const selectedName = names[randomIndex];
            document.getElementById('selected-name').textContent = `选中的学生是: ${selectedName}`;
        }
    </script>
</body>
</html>

3.效果展示

相关推荐
程序员小续2 分钟前
前端低代码架构解析:拖拽 UI + 代码扩展是怎么实现的?
前端·javascript·面试
打野赵怀真20 分钟前
H5如何禁止动画闪屏?
前端·javascript
Riesenzahn21 分钟前
你喜欢Sass还是Less?为什么?
前端·javascript
蒜香拿铁31 分钟前
vue3自动导入组合式api
前端·javascript
frontDeveloper33 分钟前
JavaScript基础知识概览(DOM-API部分)
javascript
Cutey91635 分钟前
解决在 UniApp 中,deep不生效的问题
前端·javascript·面试
阿丽塔~35 分钟前
React.memo()和 useMemo()的用法是什么,有哪些区别
前端·javascript·react.js
习惯灬36 分钟前
ES6对象新增了哪些扩展?
前端·javascript
inxunoffice42 分钟前
批量给 PDF 添加页眉页脚以及页码信息
前端·javascript·pdf
平山1 小时前
浅析JavaScript的内存机制
javascript·面试