Django Vue 练习Django Vue 练习Django Vue 练习Django Vue 练习
  • 首页
  • 博客
  • 书签
  • 文件
  • 分析
  • 登录

Django Vue 练习

发表 admin at 2022年7月17日
类别
  • Practice
标签
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
  <title>XX商城-注册</title>
  <link rel="stylesheet" type="text/css" href="{{ static('css/reset.css') }}">
  <link rel="stylesheet" type="text/css" href="{{ static('css/main.css') }}">
  <script type="text/javascript" src="{{ static('js/vue-2.5.16.js') }}"></script>
  <script type="text/javascript" src="{{ static('js/axios-0.18.0.min.js') }}"></script>
</head>
<body>
<div id="app">
  <div class="register_con">
    <div class="l_con fl">
      <a href="index.html" class="reg_logo"><img src="../static/images/logo.png"></a>
      <div class="reg_slogan">欢迎光临</div>
      <div class="reg_banner"></div>
    </div>
    <div class="r_con fr">
      <div class="reg_title clearfix">
        <h1>用户注册</h1>
        <a href="login.html">登录</a>
      </div>
      <div class="reg_form clearfix">
        <form method="post" class="register_form" v-on:submit="on_submit($event)" v-cloak>
          {{ csrf_input }}
          <ul>
            <li>
              <label>用户名:</label>
              <input type="text" v-model="username" v-on:blur="check_username" name="username" id="user_name">
              <span class="error_tip" v-show="error_name">[[ error_name_message ]]</span>
            </li>
            <li>
              <label>密码:</label>
              <input type="password" v-model="password" v-on:blur="check_password" name="password" id="pwd">
              <span class="error_tip" v-show="error_password">请输入8-20位的密码</span>
            </li>
            <li>
              <label>确认密码:</label>
              <input type="password" v-model="password2" v-on:blur="check_password2" name="password2" id="cpwd">
              <span class="error_tip" v-show="error_password2">两次输入的密码不一致</span>
            </li>
            <li>
              <label>手机号:</label>
              <input type="text" v-model="mobile" v-on:blur="check_mobile" name="mobile" id="phone">
              <span class="error_tip" v-show="error_mobile">[[ error_mobile_message ]]</span>
            </li>
            <li>
              <label>图形验证码:</label>
              <input type="text" name="image_code" id="pic_code" class="msg_input">
              <img src="../static/images/pic_code.jpg" alt="图形验证码" class="pic_code">
              <span class="error_tip">请填写图形验证码</span>
            </li>
            <li>
              <label>短信验证码:</label>
              <input type="text" name="sms_code" id="msg_code" class="msg_input">
              <a href="javascript:;" class="get_msg_code">获取短信验证码</a>
              <span class="error_tip">请填写短信验证码</span>
            </li>
            <li class="agreement">
              <input type="checkbox" v-model="allow" v-on:change="check_allow" name="allow" id="allow">
              <label>同意”XX商城用户使用协议“</label>
              <span class="error_tip" v-show="error_allow">请勾选用户协议</span>
            </li>
            <li>
              <span class="error_tip" v-show="error_submit">提交失败!</span>
            </li>
            <li class="reg_sub">
              <input type="submit" value="注 册">
            </li>
          </ul>
        </form>
      </div>
    </div>
  </div>
</div>
<div class="footer no-mp">
  <div class="foot_link">
    <a href="#">关于我们</a>
    <span>|</span>
    <a href="#">联系我们</a>
    <span>|</span>
    <a href="#">招聘人才</a>
    <span>|</span>
    <a href="#">友情链接</a>
  </div>
  <p>CopyRight © 2016 北京XX有限公司 All Rights Reserved</p>
  <p>电话:010-****888 京ICP备*******8号</p>
</div>
</body>
<script type="text/javascript" src="{{ static('js/register.js') }}"></script>
</html>
#################################
let vm = new Vue({
    el: '#app',
    delimiters: ['[[', ']]'],
    data: {
        username: 'mduser',
        password: 'mduser123',
        password2: 'mduser123',
        mobile: '13811723356',
        allow: 'true',

        error_name: false,
        error_password: false,
        error_password2: false,
        error_mobile: false,
        error_allow: false,
        error_submit: false,

        error_name_message: '',
        error_mobile_message: '',
    },
    methods: {
        check_username: function () {
            let re = /^[\w\d_-]{5,20}$/;
            if (re.test(this.username)) {
                this.error_name = false;
            } else {
                this.error_name = true;
                this.error_name_message = '请输入5-20个字符的用户名';
            }
        },
        check_password: function () {
            let re = /^[\w\d]{8,20}$/;
            if (re.test(this.password)) {
                this.error_password = false;
            } else {
                this.error_password = true;
            }
        },
        check_password2: function () {
            if (this.password2 == this.password2) {
                this.error_password2 = false;
            } else {
                this.error_password2 = true;
            }
        },
        check_mobile: function () {
            let re = /^1[3-9]\d{9}$/;
            if (re.test(this.mobile)) {
                this.error_mobile = false;
            } else {
                this.error_mobile = true;
                this.error_mobile_message = '您输入的手机号格式不正确';
            }
        },
        check_allow: function () {
            if (this.allow) {
                this.error_allow = false;
            } else {
                this.error_allow = true;
            }
        },
        on_submit: function (event) {
            // alert(event);
            this.check_username();
            this.check_password();
            this.check_password2();
            this.check_mobile();
            this.check_allow();
            if (this.error_name == true || this.error_password == true || this.error_password2 == true
                || this.error_mobile == true || this.error_allow == true) {
                this.error_submit = true;
                event.preventDefault();
            }

        },
    },
});

发表回复 取消回复

要发表评论,您必须先登录。

类别

  • Cat
  • Python
  • Django
  • Database
  • Html/CSS
  • JavaScript
  • Vue
  • RegExp
  • Maths/AI
  • PHP/Wordpress
  • Practice
  • Linux
  • Windows
  • Android
  • NAS
  • Software
  • Hardware
  • Network
  • SEO
  • English
  • Games
  • Recipes
  • General
  • Memorandum
  • Essays
  • 未分类

归档

©2015-2023 艾丽卡 Blog support@alaica.com
      ajax-loader