DESKTOP-H1V7IUO\51019 4 年 前
コミット
91d1fb8e76
14 ファイル変更412 行追加0 行削除
  1. 122 0
      css/index.css
  2. BIN
      img/QQ.png
  3. BIN
      img/email.png
  4. BIN
      img/idcard.png
  5. BIN
      img/name.png
  6. BIN
      img/sex.png
  7. BIN
      img/tel.png
  8. BIN
      img/微信.png
  9. 146 0
      index.html
  10. 1 0
      js/jquery-3.4.1.min.js
  11. 68 0
      js/jquery.qrcode.js
  12. 1 0
      js/layer/layer.js
  13. 6 0
      js/layer/skin/layer.css
  14. 68 0
      js/utf.js

+ 122 - 0
css/index.css

@@ -0,0 +1,122 @@
+* {
+    margin: 0;
+    padding: 0;
+    font-size: 14px;
+}
+body{
+    background-color: #fafafa;
+
+}
+#register{
+    padding:30px;
+    margin:0 auto;
+    text-align: center;
+}
+#register ul{
+    margin:0 auto;
+    margin-top:10px;
+    padding:0;
+}
+#register ul li{
+    display: block;
+    background:#ffffff;
+    margin-bottom:10px;
+    padding:13px 5px;
+    overflow: hidden;
+    border:1px solid #ffffff;
+    border-radius: 3px;
+    text-align: left;
+}
+#register ul li span{
+    display: block;
+    float: left;
+    vertical-align: middle;
+    width: 20%;
+    padding-top: 8px;
+    font-size: 14px;
+    color:#6b6b6b;
+    line-height: 20px;
+}
+#sex{
+    margin-top: 8px;
+}
+#register ul li span:last-child{
+    color:#222222;
+}
+#register ul li img{
+    width: 20px;
+    height: 20px;
+    display: block;
+    float: left;
+    margin-top: 8px;
+    margin-right: 10px;
+}
+#register ul li #card{
+    width: 20px;
+    height: 20px;
+    display: block;
+    float: left;
+    margin-top: 17px;
+    margin-right: 10px;
+}
+#register #submit{
+    width:80%;
+    margin-left: 10%;
+    height:50px;
+    background: #5680fa;
+    color:#ffffff;
+    border-radius: 25px;
+    border:1px solid #5680fa;
+    padding:10px;
+    font-size: 16px;
+}
+/*outline:none;
+    border:0 none;*/
+#register ul li>input{
+    width:190px;
+    height:35px;
+    font-size: 16px;
+    padding-left: 8px;
+    border-radius: 0px;
+    border-left: #fafafa solid 0px;
+    border-right: #fafafa solid 0px;
+    border-top: #fafafa solid 0px;
+    border-bottom: #dddddd solid 1px;
+}
+#radio{
+    padding-top: 8px;
+}
+#radio input{
+    vertical-align: middle;
+    margin-top: -2px;
+    margin-bottom: 1px;
+}
+#radio i{
+    font-style: normal;
+}
+/*#register ul li #idCard{
+    width:190px;
+    height:35px;
+    font-size: 16px;
+    padding-left: 8px;
+    margin-left: 10px;
+    margin-top: 10px;
+    border-radius: 0px;
+    border-left: #fafafa solid 0px;
+    border-right: #fafafa solid 0px;
+    border-top: #fafafa solid 0px;
+    border-bottom: #dddddd solid 1px;
+}*/
+#qrcodeCanvas{
+    margin:0 auto;
+    padding:10px;
+
+}
+#qrcodetext{
+    margin:0 auto;
+    padding:10px;
+    color:#5680FA;
+    font-size: 14px;
+    display: none;
+}
+

BIN
img/QQ.png


BIN
img/email.png


BIN
img/idcard.png


BIN
img/name.png


BIN
img/sex.png


BIN
img/tel.png


BIN
img/微信.png


+ 146 - 0
index.html

@@ -0,0 +1,146 @@
+<!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>
+    <link rel="stylesheet" href="./css/index.css">
+    <script type="text/javascript" src="js/utf.js"></script>
+    <script type="text/javascript" src="js/jquery-3.4.1.min.js"></script>
+    <script type="text/javascript" src="js/jquery.qrcode.js"></script>
+    <script type="text/javascript" src="js/layer/layer.js"></script>
+</head>
+
+<body>
+    <div id="register">
+        <h1 style="color: #5680fa;font-size: 18px;">受种者信息注册</h1><br>
+        <hr>
+        <ul id="inputul">
+            <li>
+                <img id="card" src="img/idcard.png">
+                <span>身份证号<br>出生证号</span>
+                <input type="text" name="idCard" id="idCard">
+            </li>
+            <li>
+                <img src="img/name.png">
+                <span>姓名</span>
+                <input type="text" name="userName" id="userName">
+            </li>
+            <li>
+                <img src="img/sex.png" alt="">
+                <span>性别</span>
+                <div id="radio">
+                    <input name="sex" type="radio" value="1" checked id="sex1"/><i>男</i>
+                    <input name="sex" type="radio" value="2" id="sex2" style="margin-left: 15px;"/><i>女</i>
+                </div>
+            </li>
+            <li>
+                <img src="img/tel.png">
+                <span>手机号</span>
+                <input type="text" name="telephone" id="telephone">
+            </li>
+            <li>
+                <img src="img/email.png">
+                <span>邮箱</span>
+                <input type="email" name="email" id="email">
+            </li>
+            <li>
+                <img src="img/QQ.png">
+                <span>QQ</span>
+                <input type="qq" name="email" id="qq">
+            </li>
+            <li>
+                <img src="img/微信.png">
+                <span>微信</span>
+                <input type="weiXin" name="email" id="weiXin">
+            </li>
+            <li>
+                <button type="button" id="submit">提交</button>
+            </li>
+        </ul>
+        <br>
+        <div id="xx"></div>
+        <div id="qrcodeCanvas"></div>
+        <div id="qrcodetext"></div>
+    </div>
+    <script>
+        // document.getElementById("bg").style.display = 'none';
+        $("#submit").click(function () {
+            submit();
+        });
+        function submit() {
+            let userName = $("#userName").val();
+            let email = $("#email").val();
+            let idCard = $("#idCard").val();
+            let telephone = $("#telephone").val();
+            let qq = $("#qq").val();
+            let weiXin = $("#weiXin").val();
+            let sex = $('input:radio:checked').val();
+            let phoneReg = new RegExp("^[1][3,4,5,7,8][0-9]{9}$");
+            let emailReg = new RegExp("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$");
+            let emailReg2 = new RegExp("^[a-z0-9A-Z]+[- | a-z0-9A-Z . _]+@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\\\.)+[a-z]{2,}$");
+            if (userName.length < 1) {
+                layer.msg("请输入受种者姓名");
+                return;
+            } else if (idCard.length != 18) {
+                layer.msg("请输入正确位数的身份证号码");
+                return;
+            } else if (!phoneReg.test(telephone)) {
+                layer.msg("请输入正确格式的手机号");
+                return;
+            } else if (!emailReg.test(email) && !emailReg.test(emailReg2)) {
+                layer.msg("请输入正确格式的邮箱");
+                return;
+            }
+
+            $.ajax({
+                url: 'http://fxc.vandh.org/prod-api/query/regiesterInoculator/',
+                type: "post",
+                dataType: "json",
+                data: JSON.stringify({ username: userName, idcard: idCard, email, telephone, qq, weixin: weiXin, sex }),
+                headers: { 'Content-Type': 'application/json;charset=utf-8' },
+                success: function (rs) {
+                    if (rs.code == 200) {
+                        const { msg } = rs;
+                        console.log(msg);
+                        document.getElementById("inputul").style.display = 'none';
+                        $("#xx").text("欢迎" + userName + "宝宝")
+                        document.getElementById("qrcodetext").style.display = 'block';
+                        $("#qrcodeCanvas").qrcode({
+                            render: "canvas", //设置渲染方式,有table和canvas,使用canvas方式渲染性能相对来说比较好
+                            text: msg,
+                            //扫描二维码后显示的内容,可以直接填一个网址,扫描二维码后自动跳向该链接
+                            width: "260", //二维码的宽度
+                            height: "260", //二维码的高度
+                            background: "#fafafa", //二维码的后景色
+                            foreground: "#5680FA", //二维码的前景色
+                            /*src: 'img/3.png' //二维码中间的图片  */
+                        });
+                        // document.getElementById("bg").style.display = 'block';
+                        //获取网页中的canvas对象
+                        var mycanvas1 = document.getElementsByTagName('canvas')[0];
+                        mycanvas1.style.display = 'none'//隐藏生成的canvas
+                        //将转换后的img标签插入到html中
+                        var img = convertCanvasToImage(mycanvas1);
+                        $('#qrcodeCanvas').append(img);//imagQrDiv表示你要插入的容器id
+                    }else{
+                        layer.msg(rs.msg);
+                    }
+                }
+            })
+            //从 canvas 提取图片 image
+            function convertCanvasToImage(canvas) {
+                //新Image对象,可以理解为DOM
+                var image = new Image();
+                // canvas.toDataURL 返回的是一串Base64编码的URL,当然,浏览器自己肯定支持
+                // 指定格式 PNG
+                image.src = canvas.toDataURL("image/png");
+                return image;
+            }
+        }
+    </script>
+</body>
+
+</html>

ファイルの差分が大きいため隠しています
+ 1 - 0
js/jquery-3.4.1.min.js


ファイルの差分が大きいため隠しています
+ 68 - 0
js/jquery.qrcode.js


ファイルの差分が大きいため隠しています
+ 1 - 0
js/layer/layer.js


ファイルの差分が大きいため隠しています
+ 6 - 0
js/layer/skin/layer.css


+ 68 - 0
js/utf.js

@@ -0,0 +1,68 @@
+/* utf.js - UTF-8 <=> UTF-16 convertion
+ *
+ * Copyright (C) 1999 Masanao Izumo <iz@onicos.co.jp>
+ * Version: 1.0
+ * LastModified: Dec 25 1999
+ * This library is free.  You can redistribute it and/or modify it.
+ */
+
+/*
+ * Interfaces:
+ * utf8 = utf16to8(utf16);
+ * utf16 = utf16to8(utf8);
+ */
+
+function utf16to8(str) {
+    var out, i, len, c;
+
+    out = "";
+    len = str.length;
+    for(i = 0; i < len; i++) {
+	c = str.charCodeAt(i);
+	if ((c >= 0x0001) && (c <= 0x007F)) {
+	    out += str.charAt(i);
+	} else if (c > 0x07FF) {
+	    out += String.fromCharCode(0xE0 | ((c >> 12) & 0x0F));
+	    out += String.fromCharCode(0x80 | ((c >>  6) & 0x3F));
+	    out += String.fromCharCode(0x80 | ((c >>  0) & 0x3F));
+	} else {
+	    out += String.fromCharCode(0xC0 | ((c >>  6) & 0x1F));
+	    out += String.fromCharCode(0x80 | ((c >>  0) & 0x3F));
+	}
+    }
+    return out;
+}
+
+function utf8to16(str) {
+    var out, i, len, c;
+    var char2, char3;
+
+    out = "";
+    len = str.length;
+    i = 0;
+    while(i < len) {
+	c = str.charCodeAt(i++);
+	switch(c >> 4)
+	{ 
+	  case 0: case 1: case 2: case 3: case 4: case 5: case 6: case 7:
+	    // 0xxxxxxx
+	    out += str.charAt(i-1);
+	    break;
+	  case 12: case 13:
+	    // 110x xxxx   10xx xxxx
+	    char2 = str.charCodeAt(i++);
+	    out += String.fromCharCode(((c & 0x1F) << 6) | (char2 & 0x3F));
+	    break;
+	  case 14:
+	    // 1110 xxxx  10xx xxxx  10xx xxxx
+	    char2 = str.charCodeAt(i++);
+	    char3 = str.charCodeAt(i++);
+	    out += String.fromCharCode(((c & 0x0F) << 12) |
+					   ((char2 & 0x3F) << 6) |
+					   ((char3 & 0x3F) << 0));
+	    break;
+	}
+    }
+
+    return out;
+}

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません