使用原生js写一个简单的注册登录页面

这篇具有很好参考价值的文章主要介绍了使用原生js写一个简单的注册登录页面。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.注册页面

2.登录页面


1.首先是我们的注册页面

这是我们的html骨架 

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>注册</title>
</head>
<link rel="stylesheet" href="./css/common.css">
<style>
    body {
        width: 100%;
        height: 100%;
        background-image: url(./img/RE53tTA.jfif);
        background-repeat: no-repeat;
        background-size: cover;
    }
</style>

<body>

    <div class="header">
        <h2>注册</h2>
        </span>
        <label for="username"><span>用户名:</span><input type="text" id="use"></label>
        <br>
        <label for="password"><span>密码:</span><input type="password" id="pwd"></label>
        <br>
        <label for="password"><span>确认密码 </span><input type="password" id="pwd2"> </label>
        <br>
        <div>
            <button onclick="login()">注册</button>
            <button><a href="./登录.html">去登录</a></button>
        </div>
    </div>

</body>

</html>

这是css样式

* {
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
  color: #fff;
  font-size: 18px;
}
.header {
  width: 400px;
  height: 450px;
  background: rgba(0, 0, 0, 0.2);
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  margin: 100px 0 0 200px;
  padding: 20px;
}
.header h2 {
  font-size: 24px;
  margin-top: 15px;
  color: rgba(255, 255, 255, 0.7);
}
.header > label {
  margin-top: 40px;
  width: 350px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header > label span {
  font-size: 24px;
  color: #fff;
}
.header > label input {
  border-radius: 20px;
  border: 1px solid #ccc;
  padding: 0 20px;
  background-color: rgba(255, 255, 255, 0.6);
  box-sizing: border-box;
  outline: none;
  width: 240px;
  height: 30px;
  font-size: 18px;
}
.header > div {
  margin-top: 30px;
  display: flex;
  justify-content: space-around;
  width: 325px;
}
.header > div button {
  width: 100px;
  height: 30px;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  border-radius: 12px;
  font-size: 18px;
  color: #fff;
}

下面就是我们注册的js封装了

        这里的函数调用直接写到了html里面的button事件上面了

 <script>
        //获取用户名;
        let useA = localStorage.getItem('username');
        console.log(useA);
        //封装注册方法
        function login() {
            //获取事件的value 
            let username = document.querySelector('#use').value;
            let password = document.querySelector('#pwd').value;
            //这里调用存入本地的数据
            Date(username, password);

        }
        //将数据存入本地
        function Date(username, password) {
            localStorage.setItem(username, JSON.stringify({
                username,
                password,
                tag: false
            }))
            if (username === '' || password === '') {
                alert('请先注册');
            }
            //判断两次密码是否一样
            else if (pwd.value != pwd2.value) {
                //不一样的话重新输入
                alert('两次输入密码不一样 请重新输入');
            } else {
                //一样则提示注册成功
                alert('注册成功 ! ! !')
            }

        }

    </script>

这就是我的注册页面 ,当然各位要是觉得不好看也可以换成自己喜欢的图片;

2.登陆页面

        到这里当然要写我们的登录页面了,从注册页面获取数据 然后调用

        html样式

<body>
    <div class="header">
        <h2>登录</h2>
        <label for="username"><span>用户名:</span><input type="text" id="use"></label>
        <br>
        <label for="password"><span>密码:</span><input type="password" id="pwd"></label>
        <br>
        <div class="pwsd">
            <input type="checkbox" id="cbx"><span>记住密码</span>
        </div>
        <div class="del">
            <button onclick="login()">登录</button>
            <button><a href="./注册.html">去注册</a></button>
        </div>
    </div>
</body>

css样式

<style>
    a {
        text-decoration: none;
        color: #fff;
    }

    body {
        width: 100%;
        height: 100%;
        background-image: url(./img/RE53r3l.jfif);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .header {
        width: 400px;
        height: 450px;
        background: rgba(0, 0, 0, .2);
        border-radius: 14px;
        display: flex;
        flex-direction: column;
        margin: 100px 0 0 200px;
        padding: 20px;
    }

    h2 {
        font-size: 24px;
        color: #fff;
    }

    label {
        margin-top: 40px;
        width: 350px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    label>span {
        font-size: 24px;
        color: #fff;
    }

    label>input {
        border-radius: 20px;
        border: 1px solid #ccc;
        padding: 0 20px;
        background-color: rgba(255, 255, 255, .6);
        box-sizing: border-box;
        outline: none;
        width: 240px;
        height: 30px;
        font-size: 18px;
    }

    .del {
        margin-top: 30px;
        display: flex;
        justify-content: space-around;
        width: 325px;
    }


    .pwsd {
        display: flex;
        margin-top: 45px;
    }

    .pwsd>input {
        width: 24px;
        height: 24px;

    }

    .pwsd>span {
        font-size: 18px;
        color: #fff;
        margin-left: 20px;
    }

    button {
        width: 100px;
        height: 40px;
        background: rgba(0, 0, 0, .6);
        border: none;
        border-radius: 12px;
        font-size: 18px;
        color: #fff;

    }
</style>

js样式


        <script>
            let use = document.getElementById('use');
            let pwd = document.getElementById('pwd');
            let cbx = document.getElementById('cbx');
            function login() {
                //登录
                //取出本地的用户的值
                let dateUse = localStorage.getItem(use.value);
                console.log(dateUse)
                let dateObj = JSON.parse(dateUse);//将取出的值转化为对象
                console.log(dateObj);

                if (use.value == dateObj.username && pwd.value == dateObj.password) {
                    alert('登陆成功');
                    dateObj.tag = cbx.checked;
                    localStorage.setItem(use.value, JSON.stringify(dateObj));//再将取出的值转化为字符串类型
                    location.href = 'https://www.baidu.com';//登录成功则跳转到百度页面

                } else {
                    alert('用户名或者密码错误')
                }
            }
            use.onblur = function () {//用户失去焦点事件s
                //取出用户的值
                let res = localStorage.getItem(use.value);
                //将用户值转化为对象
                res = JSON.parse(res);
                if (res != null && res.tag) {//本地是否有该账号
                    cbx.checked = true;
                    pwd.value = res.password;
                }
            }

        </script>

样品展示:

使用原生js写一个简单的注册登录页面文章来源地址https://www.toymoban.com/news/detail-505157.html

到了这里,关于使用原生js写一个简单的注册登录页面的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android Studio|使用SqLite实现一个简单的登录注册功能

    本学期学习了Android Studio这门课程,本次使用Android Studio自带的sqlite数据库实现一个简单的登录注册功能。 目录 一、了解什么是Android Studio? 二、了解什么是sqlite? 三、创建项目文件  四、创建活动文件和布局文件。 五、创建数据库,连接数据库  六、创建实体类,实现注

    2024年02月06日
    浏览(49)
  • HTML实现简单注册登录页面

    以下两个页面均只用HTML实现(其中注册若要添加号码与后面的登录密码判断,涉及到javascript的内容,本文只使用了html,后续会加上这些内容) 简单注册:(读者可以自行增加图片以及其他属性) 登录:    

    2024年02月11日
    浏览(40)
  • 【HTML+CSS+JS】登录注册页面大合集

    学JS也学了一段时间,正巧碰上了人工智能要调用人脸识别接口进行真人人脸识别,于是便 萌生了用人脸来进行注册和登录的想法 ,这样的话就需要开发一个登录注册页面,然后用JS绑定注册事件调用人脸识别接口进行登录注册 饭要一口一口吃,路要一步一步走,于是便在开

    2024年02月09日
    浏览(50)
  • Android studio 编写一个登录页面,并且具有注册功能

    1、创建登录界面,点击注册按钮,弹出注册窗口。 2、创建注册窗口,输入用户名和密码,在SQLite中存储用户名和密码。 3、注册成功,跳转到登录界面,进行登录。 4、注册成功,把用户名和密码保存到SharedPreferences中,登录时自动填充用户名和密码。           登录页

    2023年04月08日
    浏览(52)
  • qt设计一个简单的注册登录界面

    实现代码:

    2024年02月14日
    浏览(40)
  • HTML写一个简单的登录注册界面

    希望对你们有所帮助,再此感谢各位读者的支持,再次感谢!!! 

    2024年02月12日
    浏览(40)
  • 【HTML+CSS+JS】简单的登录注册验证

    本文是基于https://blog.csdn.net/NpcCat/article/details/106434653?spm=1001.2014.3001.5501的基础上的优化 有私信希望我做登录的用户名密码验证和登录后的页面跳转,这里用JS简单实现一下 还有很多额外的可以做的优化如输入信息格式的验证、查询用户名是否重复等都可以在取到用户输入的信

    2024年02月11日
    浏览(46)
  • Unity制作一个简单的登入注册页面

    1.创建Canvas组件 首先我们创建一个Canvas画布,我们再在Canvas画布底下创建一个空物体,取名为Resgister。把空物体的锚点设置为全屏撑开。  2.我们在Resgister空物体底下创建一个Image组件,改名为bg。我们也把它 的锚点设置为全屏撑开状态。接下来我们把我们的图片UI素材导入进

    2024年02月12日
    浏览(55)
  • 用tkinter库制作一个简单的登录注册小程序

    目录 各种组件的布局 制作过程中的理解 制作过程中遇到的难点 解决问题的方法 tkinter库作为python的标准库之一,它的功能性十分强大,下面我将使用tkinter库制作一个简易的注册登录窗口(很难看就是了)。 一· 制作之前需要大致明白各个窗体的大致位置,登录注册嘛 自然

    2024年02月09日
    浏览(38)
  • Android studio学习感受加一个简单的登录注册

    作为一名使用Android Studio的学生,我也深有同感。在我看来,Android Studio是一款非常出色的开发工具先得感觉是Android Studio+Genymotion的组合比以前好用太多了。以前我记得eclipse要加各种jar包,文件夹也混乱的很。 然后是关于Activity和布局、控件,感觉跟网页前端很像,布局和控

    2024年02月02日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包