框架django
路由配置:
url(r"^register/$",views.register,name="register"), #注册
url(r"^register/invite-(?P<invite_code>.+?)$",views.register,name="invite"), # 邀请链接
页面展示效果:
前端源码分享:
{% extends "index.html" %}
{% load customtag %}
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'css/custom.css' %}">
{% block page-content %}
<div id="content" style="background:#f8f8f8;">
<div class="clearfix">
<div class="loginBox" style="margin:60px 0;background:#fff no-repeat right;">
<div>
{% ifequal codenum 2 %}
<form class="form-horizontal" id="register" name="register" method="POST" action="{% url 'register' %}" novalidate="novalidate">
{% else %}
<form class="form-horizontal" id="register" name="register" method="POST" action="{% url 'invite' invite_code %}" novalidate="novalidate">
{% endifequal %}
{% csrf_token %}
<h3 style="margin-bottom:25px; margin-left:260px;" >账号注册</h3>
<div class="form-group">
<label for="username" class="col-sm-2 control-label">设置账号:</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="username" name="username" style="width:205px;" data-bv-field="username">
<p style="color:red">{{ errname_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="passwords" class="col-sm-2 control-label">设置密码:</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="password" name="password" style="width:205px;" data-bv-field="password">
<p style="color:red">{{ errpsw_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="passwords" class="col-sm-2 control-label">确认密码:</label>
<div class="col-sm-10">
<input type="password" class="form-control" id="copypassword" name="copypassword" style="width:205px;" data-bv-field="copypassword">
<p style="color:red">{{ errcopypsw_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="phone" class="col-sm-2 control-label">电话号码:</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="phone" name="phone" style="width:205px;" data-bv-field="phone" maxlength="11">
<p style="color:red">{{ errphone_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="email" class="col-sm-2 control-label">电子邮箱:</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="email" name="email" style="width:205px;" data-bv-field="email">
<p style="color:red">{{ erremail_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="school" class="col-sm-2 control-label">选择校园:</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="school" id="school-name" value="请选择校园" readonly οnclick="selectchool()" style="width:205px;" data-bv-field="school">
<p style="color:red">{{ errschool_msg }}</p>
</div>
</div>
<div class="form-group">
<label for="passwords" class="col-sm-2 control-label">验证码:</label>
<div class="col-sm-10">
<div style="float:left;"><input type="text" class="form-control" id="safecode" name="safecode" style="width:65px;" data-bv-field="safecode" maxlength="4"></div>
<div style="float:left; padding-left:5px;"><img src="/getVerifyCode/" alt="" id="safecodeimg"></div>
<div style="float:left; height:35px; line-height:35px;cursor:pointer;" ><span id="changecode">换一张</span></div>
</div>
<p style="color:red; padding-left:220px;">{{errcode_msg}}</p>
</div>
<div id="choose-box-wrapper">
<div id="choose-box">
<div id="choose-box-title">
<span>选择学校</span><span style="font-size:10px">(若不存在请联系管理员添加)</span>
</div>
<div id="choose-a-province">
</div>
<div id="choose-a-school">
</div>
<div id="choose-box-bottom">
<input type="botton" οnclick="hide()" value="关闭" />
</div>
</div>
</div>
<div class="form-group" style="margin-left:180px; ">
<div class="col-sm-7">
<button id="registers" class="btn btnBg" style="width:220px; cursor:pointer; margin-bottom:10px;">注 册</button>
</div>
</div>
{% csrf_token %}
</form>
</div>
</div>
</div>
</div>
<script src="/static/js/custom.js"></script>
<script src="/static/js/school.js"></script>
{% endblock %}
小y码字不易,适合新手上路,喜欢可以点赞
对应服务端源码公众号历史文章获取即可