connect_register.html 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. {extend name="default/base/base_home" /}
  2. {block name="mall_main"}
  3. <link rel="stylesheet" href="{$Think.HOME_SITE_ROOT}/css/member_login.css">
  4. <div class="ds-login-layout">
  5. <div class="openid">
  6. <span class="avatar">
  7. <img src="{$qquser_info.figureurl_qq_1}" />
  8. </span>
  9. <span class="notice">{$Think.lang.home_qq_prompt_1}<a>{$qquser_info.nickname}</a>{$Think.lang.home_qq_prompt_2}</span></div>
  10. <div class="left-pic">
  11. <img src="{$Think.HOME_SITE_ROOT}/images/login_openid.jpg" />
  12. </div>
  13. <div class="ds-login">
  14. <div class="arrow"></div>
  15. <div class="ds-qq-mode">
  16. <ul class="tabs-nav">
  17. <li><a href="#register">{$Think.lang.home_qqconnect_register_title}<i></i></a></li>
  18. </ul>
  19. <div id="tabs_container" class="tabs-container">
  20. <div id="register" class="tabs-content">
  21. <form name="register_form" id="register_form" class="ds-login-form" method="post" action="{:url('Connectqq/register')}">
  22. <dl>
  23. <dt>{$Think.lang.login_register_bind}:</dt>
  24. <dd>
  25. <div class="tab-wrapper">
  26. <label><input type="radio" value="0" name="type">{$Think.lang.login_register_connect_now}</label>
  27. <label><input type="radio" value="1" name="type" checked>{$Think.lang.login_register_join_us}</label>
  28. </div>
  29. </dd>
  30. </dl>
  31. <dl>
  32. <dt>{$Think.lang.login_register_username}:</dt>
  33. <dd>
  34. <input type="text" value="{:session('member_name')}" id="user" name="user" class="text"/>
  35. </dd>
  36. </dl>
  37. <dl>
  38. <dt>{$Think.lang.login_register_pwd}:</dt>
  39. <dd>
  40. <input type="password" value="" id="password" name="password" class="text"/>
  41. </dd>
  42. </dl>
  43. <dl class="input-register">
  44. <dt>{$Think.lang.login_register_pwd2}:</dt>
  45. <dd>
  46. <input type="password" value="" id="password2" name="password2" class="text"/>
  47. </dd>
  48. </dl>
  49. <div class="submit-div">
  50. <input type="submit" name="submit" value="{$Think.lang.login_register_enter_now}" class="submit"/>
  51. </div>
  52. </form>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. <script type="text/javascript">
  59. $(function(){
  60. $('.tab-wrapper input').click(function(){
  61. var rules={user: {
  62. minlength: 3,
  63. maxlength: 15,
  64. remote: {
  65. url: HOMESITEURL + '/Login/check_member.html',
  66. type: 'get',
  67. data: {
  68. member_name: function () {
  69. return $('#user').val();
  70. }
  71. }
  72. }
  73. },
  74. password: {
  75. minlength: 6,
  76. maxlength: 20
  77. }
  78. }
  79. if($(this).val()=='1'){
  80. $('#user').rules("add",rules.user)
  81. $('#password').rules("add",rules.password)
  82. $('.input-register').show()
  83. $('.input-register input').removeClass('ignore')
  84. }else{
  85. $('#user').rules("remove",'minlength maxlength remote')
  86. $('#password').rules("remove",'minlength maxlength')
  87. $('.input-register').hide()
  88. $('.input-register input').addClass('ignore')
  89. }
  90. })
  91. //注册表单验证
  92. let vali=$('#register_form').validate({
  93. errorPlacement: function(error, element){
  94. var error_td = element.parent('dd');
  95. error_td.append(error);
  96. element.parents('dl:first').addClass('error');
  97. },
  98. success: function(label) {
  99. label.parents('dl:first').removeClass('error').find('label').remove();
  100. },
  101. ignore: ".ignore",
  102. rules: {
  103. user: {
  104. required: true,
  105. minlength: 3,
  106. maxlength: 15,
  107. remote: {
  108. url: HOMESITEURL + '/Login/check_member.html',
  109. type: 'get',
  110. data: {
  111. member_name: function () {
  112. return $('#user').val();
  113. }
  114. }
  115. }
  116. },
  117. password: {
  118. required: true,
  119. minlength: 6,
  120. maxlength: 20
  121. },
  122. password2: {
  123. required: true,
  124. equalTo: '#password',
  125. },
  126. email: {
  127. required: true,
  128. email: true,
  129. remote: {
  130. url: "{:url('Login/check_email')}",
  131. type: 'get',
  132. data: {
  133. email: function() {
  134. return $('#email').val();
  135. }
  136. }
  137. }
  138. }
  139. },
  140. messages : {
  141. user: {
  142. required: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_input_username}',
  143. minlength: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_username_range}',
  144. maxlength: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_username_range}',
  145. remote: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_username_exists}'
  146. },
  147. password : {
  148. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_input_password}',
  149. minlength: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_password_range}',
  150. maxlength: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_password_range}'
  151. },
  152. password2 : {
  153. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_input_password_again}',
  154. equalTo: '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_password_not_same}'
  155. },
  156. email : {
  157. required : '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_input_email}',
  158. email : '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_invalid_email}',
  159. remote : '<i class="iconfont">&#xe64c;</i>{$Think.lang.login_register_email_exists}'
  160. }
  161. }
  162. });
  163. });
  164. </script>
  165. {/block}