解答有关于JavaScript的问题,需要了解方法以及思路,最终可以使程序成功运行!

img

解答有关于JavaScript的程序问题,掌握思路以及方法,并可以成功运行


<!DOCTYPE html>

<html lang="zh-CN">

    
<head>
        
<meta charset="UTF-8" />
    
</head>

<style>
.error {
    color: red;
    font-size: 12px;
    margin-top: 5px;
}
</style>

<body>
    <form id="register-form">
        <div>
            <label>会员账号:</label>
            <input type="text" name="username" id="username" required>
            <div id="username-error" class="error"></div>
        </div>
        <div>
            <label>密码:</label>
            <input type="password" name="password" id="password" required>
            <div id="password-error" class="error"></div>
        </div>
        <div>
            <label>确认密码:</label>
            <input type="password" name="confirm-password" id="confirm-password" required>
            <div id="confirm-password-error" class="error"></div>
        </div>
        <div>
            <label>性别:</label>
            <label><input type="radio" name="gender" value="male" checked></label>
            <label><input type="radio" name="gender" value="female"></label>
        </div>
        <div>
            <label>所在城市:</label>
            <select name="city">
                <option value="beijing">北京</option>
                <option value="shanghai">上海</option>
                <option value="guangzhou">广州</option>
            </select>
        </div>
        <div>
            <label>兴趣爱好:</label>
            <label><input type="checkbox" name="hobby" value="reading">阅读</label>
            <label><input type="checkbox" name="hobby" value="traveling">旅行</label>
            <label><input type="checkbox" name="hobby" value="swimming">游泳</label>
        </div>
        <button type="submit">立即注册</button>
    </form>
<script>
document.querySelector("#register-form").addEventListener("submit", function(event) {
    event.preventDefault();
    var username = document.querySelector("#username").value;
    var password = document.querySelector("#password").value;
    var confirmPassword = document.querySelector("#confirm-password").value;
    var gender = document.querySelector("input[name='gender']:checked").value;
    var city = document.querySelector("select[name='city']").value;
    var hobbyField = document.getElementsByName("hobby");
    var hobby = [];
    for (var i = 0; i < hobbyField.length; i++) {
        if (hobbyField[i].checked) {
            hobby.push(hobbyField[i].value);
        }
    }
    var errors = [];
    if (username === "") {
        errors.push("会员账号不能为空");
        document.querySelector("#username-error").textContent = "会员账号不能为空";
    } else {
        document.querySelector("#username-error").textContent = "";
    }
    if (password === "") {
        errors.push("密码不能为空");
        document.querySelector("#password-error").textContent = "密码不能为空";
    } else if (password.length < 6) {
        errors.push("密码不能少于6位");
        document.querySelector("#password-error").textContent = "密码不能少于6位";
    } else {
        document.querySelector("#password-error").textContent = "";
    }
    if (confirmPassword === "") {
        errors.push("确认密码不能为空");
        document.querySelector("#confirm-password-error").textContent = "确认密码不能为空";
    } else if (password !== confirmPassword) {
        errors.push("两次密码输入不一致");
        document.querySelector("#confirm-password-error").textContent = "两次密码输入不一致";
    } else {
        document.querySelector("#confirm-password-error").textContent = "";
    }
    if (errors.length > 0) {
        alert(errors.join("\n"));
    } else {
        var data = {
            username: username,
            password: password,
            gender: gender,
            city: city,
            hobby: hobby
        };
        localStorage.setItem("register-info", JSON.stringify(data));
        window.location.href = "register-success.html";
    }
});
</script>
</body>
</html>

注册成功页面:

页面名字register-success.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>注册成功</title>
    <style>
        table {
            width: 80%;
            margin: 2em auto;
            border-collapse: collapse;
        }
        th, td {
            padding: 0.5em;
            border: 1px solid black;
        }
        th {
            background-color: #ddd;
        }
    </style>
</head>
<body>
    <h1>注册成功!您的信息如下:</h1>
    <table>
        <thead>
            <tr>
                <th>字段</th>
                <th></th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>会员账号</td>
                <td id="username"></td>
            </tr>
            <tr>
                <td>性别</td>
                <td id="gender"></td>
            </tr>
            <tr>
                <td>所在城市</td>
                <td id="city"></td>
            </tr>
            <tr>
                <td>兴趣爱好</td>
                <td id="hobby"></td>
            </tr>
        </tbody>
    </table>
    <script>
        window.onload = function() {
            var data = JSON.parse(localStorage.getItem("register-info"));
            document.querySelector("#username").textContent = data.username;
            document.querySelector("#gender").textContent = data.gender;
            document.querySelector("#city").textContent = data.city;
            document.querySelector("#hobby").textContent = data.hobby.join(", ");
        }
    </script>
</body>
</html>

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/699945
  • 你也可以参考下这篇文章:精通JavaScript?关于JavaScript的内存与性能问题,你又了解多少呢?
  • 你还可以看下javascript参考手册中的 javascript 正则表达式和字符串的方法
  • 除此之外, 这篇博客: JavaScript的垃圾回收机制,清除无用变量,释放多余内存,展现更好的性能中的 JavaScript中的垃圾回收机制 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 您还可以看一下 波哥老师的JavaScript 基础语法教程最新版课程中的 课程导读及JavaScript简介小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    作为一个AI,我无法明确知道您的具体问题,需要您提供更多的信息和上下文。同时,以下是一些JavaScript常见的问题和解决方案,供参考:

    1. TypeError: Cannot read property 'xxx' of undefined 这种错误通常是因为变量未被及时初始化,或者引用了不存在的对象。可以先检查变量是否为null或undefined,然后再查看代码逻辑是否有误。

    2. SyntaxError: Invalid or unexpected token 这种错误通常是因为代码中存在语法错误,最常见的是括号、引号或分号未匹配。可以使用代码编辑器的语法检查功能,或者在浏览器调试控制台中查看错误具体位置。

    3. Uncaught ReferenceError: xxx is not defined 这种错误通常是因为变量或函数未被声明或定义。可以先检查代码中是否有拼写错误或者漏写关键字,然后再检查变量或函数是否被正确声明或定义。

    4. Uncaught TypeError: xxx is not a function 这种错误通常是因为尝试将非函数类型的变量作为函数调用或调用不存在的函数。可以先检查变量类型是否正确,然后再检查代码中是否存在函数调用逻辑错误。

    以上只是一些常见的问题和解决方案,如果您遇到其他问题,建议提供具体的错误提示信息和相关代码,以便更好地帮助您解决问题。