register.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>注册</title>
  6. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  7. <link href="../../css/mui.min.css" rel="stylesheet" />
  8. <style>
  9. .lg {padding: 35px;margin-top: 10px;text-align: center;}
  10. .fq{padding: 0px 30px 20px 30px;}
  11. .input-group{height: auto;}
  12. .input-group i{margin: 11px 0px 10px 5px;font-size: 18px;}
  13. .input-group input{padding: 10px 11px 11px 35px;}
  14. .code{position: absolute;right: 0;top: 0;margin-top: 10px;margin-right: 12px;font-size: 12px;color: #fe580a;font-weight: bold;}
  15. .qy{color: darkgray;text-align: left;font-size: 12px;}
  16. img{max-width: 80px;border-radius: 7px;padding-top: 5px;}
  17. .btn{margin-top: 25px;}
  18. .divider{margin-top: 50px;}
  19. .register{margin-top: 50px;color: darkgray;font-size: 13px;}
  20. </style>
  21. </head>
  22. <body>
  23. <header class="mui-bar mui-bar-nav">
  24. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  25. <h1 class="mui-title">注册</h1>
  26. </header>
  27. <div class="mui-content" id="app">
  28. <div class="lg animated bounceIn">
  29. <div class="fq">
  30. <div class="mui-segmented-control">
  31. <a class="mui-control-item mui-active" id="0">个人用户</a>
  32. <a class="mui-control-item" id="1">企业用户</a>
  33. </div>
  34. </div>
  35. <div class="input-group">
  36. <i class="icon">&#xe641;</i>
  37. <input type="tel" placeholder="手机号" v-model="item.account" />
  38. </div>
  39. <div class="input-group">
  40. <i class="icon">&#xe63a;</i>
  41. <input type="password" placeholder="密码" v-model="item.password" />
  42. </div>
  43. <div class="input-group">
  44. <i class="icon">&#xe63a;</i>
  45. <input type="password" placeholder="重复密码" v-model="item.again" />
  46. </div>
  47. <div class="input-group">
  48. <i class="icon">&#xe7a1;</i>
  49. <input type="tel" placeholder="验证码" v-model="item.code" />
  50. <span class="code" @click.stop="sendMessage()">{{msg}}</span>
  51. </div>
  52. <div class="input-group" v-if="item.mType==1">
  53. <i class="icon">&#xe724;</i>
  54. <input type="text" placeholder="企业名称" v-model="item.company"/>
  55. </div>
  56. <div class="qy" v-if="item.mType==1">
  57. <div class="qy">上传营业执照(需审核)</div>
  58. <a href="#picture"><img :src="item.fj==''?'../../images/zz.png':item.fj" /></a>
  59. </div>
  60. <button class="btn" @click="register()">立即注册</button>
  61. <div class="divider">
  62. <div class="line" style="width: 30%;"></div>
  63. <div class="text" style="width: 40%;">已有账号?</div>
  64. <div class="line" style="width: 30%;"></div>
  65. <div class="clear"></div>
  66. </div>
  67. <div class="mui-action-back register" @click="register()">去登录</div>
  68. </div>
  69. <!--图片选择-->
  70. <div id="picture" class="mui-popover mui-popover-action mui-popover-bottom">
  71. <ul class="mui-table-view">
  72. <li class="mui-table-view-cell" @click="takePhoto()">
  73. <a>拍照</a>
  74. </li>
  75. <li class="mui-table-view-cell" @click="pickImg()">
  76. <a>选取现有</a>
  77. </li>
  78. </ul>
  79. <ul class="mui-table-view">
  80. <li class="mui-table-view-cell" style="color: red;">
  81. <a href="#picture"><b>取消</b></a>
  82. </li>
  83. </ul>
  84. </div>
  85. </div>
  86. <script src="../../js/mui.min.js"></script>
  87. <script src="../../js/app.js"></script>
  88. <script src="../../js/vue.min.js"></script>
  89. <script type="text/javascript">
  90. var time = 60; //1分钟倒计时
  91. var vm = new Vue({
  92. el: "#app",
  93. data: {
  94. flag:true,
  95. msg: '发送验证码',
  96. item: {account: '',password: '',again:'',mType: 0,company:'',fj:'',code:''}
  97. },
  98. methods: {
  99. //发送验证码
  100. sendMessage: function() {
  101. if(!isPhone(vm.item.account)) {mui.toast("手机格式不正确");return;}
  102. if(vm.flag == false) {return;}
  103. request(urls().sendMessage, {phone: vm.item.account},function(res) {
  104. if(res.result == true) {
  105. mui.toast("发送成功");
  106. //一分钟倒计时
  107. var countdown = setInterval(function() {
  108. time--;
  109. if(time == 0) {
  110. vm.flag = true;
  111. vm.msg = '发送验证码';
  112. time = 60;
  113. clearInterval(countdown);
  114. } else {
  115. vm.flag = false;
  116. vm.msg = '重新获取(' + time + ')';
  117. }
  118. }, 1000)
  119. } else {
  120. mui.toast(res.msg);
  121. }
  122. plus.nativeUI.closeWaiting();
  123. })
  124. },
  125. //拍照
  126. takePhoto: function() {
  127. takePhoto(function(res) {})
  128. },
  129. //选取照片
  130. pickImg: function() {
  131. pickImg(function(p) {
  132. vm.compress(p.files[0]);
  133. }, 1);
  134. },
  135. //图片压缩上传
  136. compress: function(path) {
  137. compress(function(c) {
  138. upload(urls().uploadFj,path,function(res) {
  139. var res=JSON.parse(res.responseText);
  140. vm.item.fj=urls().path+res.url;
  141. });
  142. }, path, '75%');
  143. },
  144. //注册
  145. register: function() {
  146. request(urls().register,this.item, function(res) {
  147. if(res.result == true) {
  148. mui.toast("注册成功");
  149. mui.back();
  150. } else {
  151. mui.alert(res.msg);
  152. }
  153. plus.nativeUI.closeWaiting();
  154. })
  155. },
  156. }
  157. })
  158. mui('body').on('tap', '.mui-control-item', function(e) {
  159. vm.item.mType = e.target.id;
  160. })
  161. </script>
  162. </body>
  163. </html>