설명 없음
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

users_reg_field.htm 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436
  1. {eyou:volist name="$users_para" id="vo"}
  2. {eyou:switch name="vo.dtype"}
  3. {eyou:case value="hidden"}
  4. <!-- 隐藏域 start -->
  5. <div class="form-group group_z" style="display: none;">
  6. <div class="row">
  7. <div class="ey-form-file-title col-md-3"></div>
  8. <div class="col-md-9">
  9. <input type="hidden" class="input-txt" id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$vo.dfvalue|default=''}">
  10. </div>
  11. </div>
  12. </div>
  13. <!-- 隐藏域 start -->
  14. {/eyou:case}
  15. {eyou:case value="mobile"}
  16. <!-- 手机文本框 start -->
  17. <div class="form-group group_z">
  18. <div class="input-group">
  19. {eyou:eq name="$vo.is_required" value="1"}<em class="tis">(必填)</em>{/eyou:eq}
  20. <input type="text" class="form-control" required id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" maxlength="11" value="{$vo.dfvalue|default=''}" placeholder="{$vo.title}">
  21. </div>
  22. </div>
  23. {eyou:if condition="isset($usersConfig['users_verification']) && 3 == $usersConfig['users_verification']"}
  24. <div class="form-group group_z">
  25. <div class="input-group btn-direction">
  26. <input type="hidden" name="__mobile_1_token__" value="{$Request.token.__mobile_1_token__}" />
  27. <input type="text" class="form-control" id="{$vo.fieldArr}_{$vo.name|default=''}_code" name="{$vo.fieldArr}[{$vo.name|default=''}_code]" placeholder="手机验证码" autocomplete="off">
  28. <input type="button" id="{$vo.fieldArr}_{$vo.name|default=''}_button" onclick="get_{$vo.fieldArr}{$vo.name|default=''}_code();" class="btn btn-primary sento" value="获取验证码"/>
  29. </div>
  30. </div>
  31. <script type="text/javascript">
  32. function get_{$vo.fieldArr}{$vo.name|default=''}_code() {
  33. var mobile = $("#{$vo.fieldArr}_{$vo.name|default=''}").val();
  34. // 手机号是否为空
  35. if (!mobile) {
  36. $("#{$vo.fieldArr}_{$vo.name|default=''}").focus();
  37. layer.msg('请输入{$vo.title}!', {time: 1500});
  38. return false;
  39. }
  40. // 手机格式不正确
  41. var reg = /^1[0-9]{10}$/i;
  42. if (!reg.test(mobile)) {
  43. $("#{$vo.fieldArr}_{$vo.name|default=''}").focus();
  44. layer.msg('请输入正确的{$vo.title}!', {time: 1500});
  45. return false;
  46. }
  47. // 设置为不可点击
  48. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('获取中…').attr('disabled', 'disabled');
  49. var __mobile_1_token__ = $('input[name=__mobile_1_token__]').val();
  50. $.ajax({
  51. url: "{eyou:url link='api/Ajax/SendMobileCode' /}",
  52. data: {type:'reg', mobile:mobile, is_mobile:true, title:'账号注册', source:0, __mobile_1_token__:__mobile_1_token__},
  53. type:'post',
  54. dataType:'json',
  55. success:function(res){
  56. if (res.code == 1) {
  57. {$vo.fieldArr}{$vo.name|default=''}_countdown();
  58. layer.msg(res.msg, {time: 1500});
  59. } else {
  60. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('获取验证码').removeAttr("disabled");
  61. layer.alert(res.msg, {icon: 2, title: false, closeBtn: 0});
  62. }
  63. },
  64. error : function() {
  65. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('获取验证码').removeAttr("disabled");
  66. layer.alert('发送失败,请尝试重新发送!', {icon: 5, title: false, closeBtn: 0});
  67. }
  68. });
  69. }
  70. function {$vo.fieldArr}{$vo.name|default=''}_countdown(){
  71. // 倒计时
  72. var setTime;
  73. var time = 120;
  74. setTime = setInterval(function() {
  75. if(0 >= time) {
  76. clearInterval(setTime);
  77. return false;
  78. }
  79. time--;
  80. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val(time + '秒').attr('disabled', 'disabled');
  81. if(time == 0) $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('获取验证码').removeAttr("disabled");
  82. }, 1000);
  83. }
  84. </script>
  85. {/eyou:if}
  86. <!-- 手机文本框 end -->
  87. <!-- 手机文本框 end -->
  88. {/eyou:case}
  89. {eyou:case value="email"}
  90. <!-- 邮箱文本框 start -->
  91. <div class="form-group group_z">
  92. <!-- {eyou:eq name="$vo.is_required" value="1"}<em class="tis">(必填)</em>{/eyou:eq} -->
  93. <input type="text" class="form-control h60" required id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$vo.dfvalue|default=''}" placeholder="{$vo.title}" >
  94. </div>
  95. {eyou:if condition="isset($usersConfig['users_verification']) && 2 == $usersConfig['users_verification']"}
  96. <div class="form-group group_z">
  97. <div class="input-group btn-direction">
  98. <input type="text" class="form-control" id="{$vo.fieldArr}_{$vo.name|default=''}_code" name="{$vo.fieldArr}[{$vo.name|default=''}_code]" value="" placeholder="邮箱验证码">
  99. <input type="button" id="{$vo.fieldArr}_{$vo.name|default=''}_button" onclick="get_{$vo.fieldArr}{$vo.name|default=''}_code();" class="btn btn-primary sento" value="点击发送" />
  100. </div>
  101. </div>
  102. <script type="text/javascript">
  103. function get_{$vo.fieldArr}{$vo.name|default=''}_code(){
  104. var email = $("#{$vo.fieldArr}_{$vo.name|default=''}").val();
  105. var reg = /^[a-z0-9]([a-z0-9\\.]*[-_]{0,4}?[a-z0-9-_\\.]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+([\.][\w_-]+){1,5}$/i;
  106. // 邮箱格式不正确
  107. if(!reg.test(email)){
  108. layer.msg('请正确输入邮箱地址!', {time: 1500});
  109. return false;
  110. }
  111. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('发送中…');
  112. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").attr('disabled', 'disabled');
  113. $.ajax({
  114. // async:false,
  115. url: "{eyou:url link='user/Smtpmail/send_email' /}",
  116. data: {type:'reg',email:email,title:'账号注册',scene:2},
  117. type:'post',
  118. dataType:'json',
  119. success:function(res){
  120. if(res.code == 1){
  121. {$vo.fieldArr}{$vo.name|default=''}_countdown();
  122. layer.msg(res.msg, {time: 1500});
  123. }else{
  124. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('点击发送');
  125. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").removeAttr("disabled");
  126. showErrorAlert(res.msg);
  127. }
  128. },
  129. error : function(e) {
  130. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('点击发送');
  131. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").removeAttr("disabled");
  132. showErrorAlert(e.responseText);
  133. }
  134. });
  135. }
  136. function {$vo.fieldArr}{$vo.name|default=''}_countdown(){
  137. // 倒计时
  138. var setTime;
  139. var time = {php}echo config('global.email_send_time');{/php};
  140. setTime = setInterval(function(){
  141. if(0 >= time){
  142. clearInterval(setTime);
  143. return;
  144. }
  145. time--;
  146. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val(time+'秒');
  147. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").attr('disabled', 'disabled');
  148. if(time == 0){
  149. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").val('点击发送');
  150. $("#{$vo.fieldArr}_{$vo.name|default=''}_button").removeAttr("disabled");
  151. }
  152. },1000);
  153. }
  154. </script>
  155. {/eyou:if}
  156. <!-- 邮箱文本框 end -->
  157. {/eyou:case}
  158. {eyou:case value="text"}
  159. <!-- 单行文本框 start -->
  160. {eyou:if condition='($vo.title == "地区")'}
  161. <!--引入城市-->
  162. <link rel="stylesheet" href="https://oss.zc10000.com/static/js/city/style.css" media="all">
  163. <script src="https://oss.zc10000.com/static/js/jquery-v3.1.1.min.js?t=544151"></script>
  164. <script type="text/javascript" src="https://oss.zc10000.com/static/js/city/cityTemplate.js?t=225513619665"></script>
  165. <div class="form-group group_z">
  166. <div class="input-group" style="position:relative;">
  167. {eyou:eq name="$vo.is_required" value="1"}<em class="tis">(必填)</em>{/eyou:eq}
  168. <input type="text" class="form-control" required id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$vo.dfvalue|default=''}" lay-verify="city" autocomplete="off"
  169. placeholder="请选择您的所在城市">
  170. <div id="in_city" style="display: none;"></div>
  171. </div>
  172. </div>
  173. <style>
  174. #in_city{
  175. position:absolute !important;top:60px !important;left:0px !important;
  176. }
  177. #in_city h1{
  178. font-size: 20px !important;
  179. }
  180. </style>
  181. <script type="text/javascript">
  182. var cityA = $(".city_a_le1 a"); //城市
  183. var pla = $("#{$vo.fieldArr}_{$vo.name|default=''}"); //出发地
  184. var dest = $("#destination"); //目的地
  185. // 默认值
  186. inCity.width = "460"; //城市选择框 宽
  187. inCity.height = "auto"; //城市选择框 高
  188. inCity.id = "#in_city"; //城市选择框 父级ID
  189. inCity.Children = '.city_a_le1'; //城市名box
  190. // 初始化 城市HTML模板
  191. $(inCity.id).prepend(inCity._template.join(''));
  192. inCity.Hot(cityA);
  193. //城市 导航
  194. var apay = $(".screen a");
  195. var placeThis; //当前选择标签
  196. apay.click(function (obj) { //城市导航
  197. inCity.payment($(this));
  198. })
  199. inCity.place(pla); //出发地
  200. inCity.destination(dest); //目的地
  201. inCity.cityClick(cityA); //显示赋值城市
  202. </script>
  203. {eyou:else /}
  204. <div class="form-group group_z">
  205. <div class="input-group">
  206. {eyou:eq name="$vo.is_required" value="1"}<em class="tis">(必填)</em>{/eyou:eq}
  207. <input type="text" class="form-control" required id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$vo.dfvalue|default=''}" placeholder="{$vo.title}">
  208. </div>
  209. </div>
  210. {/eyou:if}
  211. <!-- 单行文本框 end -->
  212. {/eyou:case}
  213. {eyou:case value="multitext"}
  214. <!-- 多行文本框 start -->
  215. <div class="form-group group_z">
  216. <div class="input-group">
  217. <textarea rows="5" cols="60" class="form-control" id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" {eyou:eq name="$vo.is_required" value="1"} placeholder="{$vo.title}(必填)" {eyou:else/} placeholder="{$vo.title}" {/eyou:eq}>{$vo.dfvalue|default=''}</textarea>
  218. </div>
  219. </div>
  220. <!-- 多行文本框 end -->
  221. {/eyou:case}
  222. {eyou:case value="checkbox"}
  223. <!-- 复选框 start -->
  224. <div class="form-group group_z">
  225. <fieldset>
  226. <legend>{$vo.title}{eyou:if condition="1 == $vo.is_required"}(必填){/eyou:if}</legend>
  227. {eyou:volist name="$vo.dfvalue" id="v2"}
  228. <label class="checkbox-label">
  229. <span>{$v2}</span>
  230. <input type="checkbox" class="checkbox" name="{$vo.fieldArr}[{$vo.name|default=''}][]" value="{$v2}" {eyou:if condition="isset($vo['trueValue']) AND in_array($v2, $vo['trueValue'])"}checked="checked"{/eyou:if}>
  231. <span class="check-mark"></span>
  232. </label>
  233. {/eyou:volist}
  234. </fieldset>
  235. </div>
  236. <!-- 复选框 end -->
  237. {/eyou:case}
  238. {eyou:case value="radio"}
  239. <!-- 单选项 start -->
  240. <div class="form-group group_z">
  241. <fieldset>
  242. <legend>{$vo.title}{eyou:if condition="1 == $vo.is_required"}(必填){/eyou:if}</legend>
  243. {eyou:volist name="$vo.dfvalue" id="v2"}
  244. <label class="radio-label">
  245. <span>{$v2}</span>
  246. <input type="radio" class="radio" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$v2}" {eyou:if condition="isset($vo['trueValue']) AND in_array($v2, $vo['trueValue'])"}checked="checked"{/eyou:if}>
  247. <span class="check-mark"></span>
  248. </label>
  249. {/eyou:volist}
  250. </fieldset>
  251. </div>
  252. <!-- 单选项 end -->
  253. {/eyou:case}
  254. {eyou:case value="select"}
  255. <!-- 下拉框 start -->
  256. <div class="form-group group_z">
  257. <fieldset>
  258. <legend>{$vo.title}{eyou:if condition="1 == $vo.is_required"}(必填){/eyou:if}</legend>
  259. <div class="select">
  260. <div class="dd">
  261. <select name="{$vo.fieldArr}[{$vo.name|default=''}]" id="{$vo.fieldArr}_{$vo.name|default=''}" class="form-control">
  262. <option value="">请选择</option>
  263. {eyou:volist name="$vo.dfvalue" id="v2"}
  264. <option value="{$v2}" {eyou:if condition="isset($vo['trueValue']) AND in_array($v2, $vo['trueValue'])"}selected{/eyou:if}>{$v2}</option>
  265. {/eyou:volist}
  266. </select>
  267. </div>
  268. </div>
  269. </fieldset>
  270. </div>
  271. <!-- 下拉框 end -->
  272. {/eyou:case}
  273. <!-- 扩展 start -->
  274. <!-- 扩展 -->
  275. {eyou:case value="img"}
  276. <!-- 单张图 start -->
  277. <div class="form-group group_z">
  278. <div class="input-group input-group-icon">
  279. <input type="text" class=" form-control" id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="" style="display: none;"><!--{$vo.info|default=''}-->
  280. <input class=" form-control {$vo.fieldArr}_{$vo.name|default=''}_input" placeholder="{$vo.title}" onClick="GetUploadify(1,'','allimg','{$vo.fieldArr}_{$vo.name|default=''}_call_back','{:url('user/Uploadify/upload',['resource'=>'reg'])}')">
  281. </div>
  282. </div>
  283. <script type="text/javascript">
  284. function {$vo.fieldArr}_{$vo.name|default=''}_call_back(fileurl_tmp)
  285. {
  286. $("#{$vo.fieldArr}_{$vo.name|default=''}").val(fileurl_tmp);
  287. $(".{$vo.fieldArr}_{$vo.name|default=''}_input").val(fileurl_tmp);
  288. }
  289. </script>
  290. <!-- 单张图 end -->
  291. {/eyou:case}
  292. {eyou:case value="imgs"}
  293. <!-- 多张图 start -->
  294. <div class="form-group group_z images_upload_main">
  295. <div class="input-group">
  296. <button type="button" style="text-align: left;" class="form-control" onClick="GetUploadify(100,'','allimg','{$vo.fieldArr}_{$vo.name|default=''}_call_back', '', '{$vo.title}');">
  297. {$vo.title}<span style="float: right;font-size: 16px;">点击上传</span>
  298. </button>
  299. </div>
  300. <div style="margin: 5px 0;padding: 3px;border: 1px dashed #ebeced;display: none;" id="upload_imgs_{$vo.fieldArr}_{$vo.name|default=''}">
  301. <!--上传填充-->
  302. </div>
  303. <!-- 上传图片显示的样板 start -->
  304. <div class="{$vo.fieldArr}_{$vo.name|default=''}_upload_tpl" style="display: none;">
  305. <div class="fieldext_upload fieldext_upload_html">
  306. <div class="images_upload_item">
  307. <input type="hidden" name="{$vo.fieldArr}[{$vo.name|default=''}][]" value="">
  308. <a href="" >
  309. <img src="__STATIC__/admin/images/add-button.jpg" width="42" height="42">
  310. </a>
  311. <a class="delete" href="javascript:void(0)" title="删除"></a>
  312. </div>
  313. </div>
  314. </div>
  315. <!-- 上传图片显示的样板 end -->
  316. </div>
  317. <script type="text/javascript">
  318. var GetUploadify_url = "{:url('user/Uploadify/upload',['resource'=>'reg'])}";
  319. // 上传多图回调函数
  320. function {$vo.fieldArr}_{$vo.name|default=''}_call_back(paths){
  321. var last_div = $(".{$vo.fieldArr}_{$vo.name|default=''}_upload_tpl").html();
  322. for (var i=0;i<paths.length ;i++ )
  323. {
  324. if ($("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html").length == 0) {
  325. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''}").css('display','');
  326. }
  327. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''}").append(last_div); // 插入一个 新图片
  328. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html:last").find('a:eq(0)').attr('href',paths[i]).attr('onclick','').attr('target', "_blank");// 修改他的链接地址
  329. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html:last").find('img').attr('src',paths[i]);// 修改他的图片路径
  330. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html:last").find('a:eq(1)').attr('onclick',"{$vo.fieldArr}_{$vo.name|default=''}_ClearPicArr2(this,'"+paths[i]+"')").text('');
  331. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html:last").find('input').val(paths[i]); // 设置隐藏域 要提交的值
  332. }
  333. }
  334. /*
  335. * 上传之后删除组图input
  336. * @access public
  337. * @val string 删除的图片input
  338. */
  339. function {$vo.fieldArr}_{$vo.name|default=''}_ClearPicArr2(obj,path)
  340. {
  341. $(obj).parent().parent().remove();
  342. if ($("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''} .fieldext_upload_html").length == 0) {
  343. $("#upload_imgs_{$vo.fieldArr}_{$vo.name|default=''}").css('display','none');
  344. }
  345. }
  346. </script>
  347. <!-- 多张图 end -->
  348. {/eyou:case}
  349. {case value="file"}
  350. {eyou:static file="/public/plugins/layui/css/layui.css" /}
  351. {eyou:static file="/public/plugins/layui/layui.js" /}
  352. <!-- 单个文件 start -->
  353. <div class="form-group group_z">
  354. <div class="input-group">
  355. <input type="text" id="{$vo.fieldArr}_{$vo.name|default=''}" name="{$vo.fieldArr}[{$vo.name|default=''}]" value="{$vo.dfvalue|default=''}" style="display: none;">
  356. <button type="button" style="text-align: left;" class="form-control" id="upload_{$vo.fieldArr}_{$vo.name|default=''}" >{$vo.title}<span style="float: right;font-size: 16px;" id="btntxt_file_{$vo.fieldArr}_{$vo.name|default=''}">点击上传</span></button>
  357. <!-- <a id="download_file_{$vo.fieldArr}_{$vo.name|default=''}" style="margin-left: 10px;text-decoration: underline;{eyou:notempty name='$vo.dfvalue' /}display: 'block';{eyou:else /}display: none;{/eyou:notempty}" {eyou:notempty name='$vo.dfvalue' /} href="{$vo.dfvalue|default=''}" download="{$vo.dfvalue|get_filename=###}" {/eyou:notempty}>
  358. <img src="__STATIC__/common/images/file.png" alt="" style="width: 16px;height: 16px;">下载附件
  359. </a> -->
  360. </div>
  361. </div>
  362. <script>
  363. $(function(){
  364. layui.use('upload', function(){
  365. var upload = layui.upload;
  366. //执行实例
  367. upload.render({
  368. elem: "#upload_{$vo.fieldArr}_{$vo.name|default=''}" //绑定元素
  369. ,url: "{:url('user/Uploadify/DownloadUploadFileAjax')}"
  370. ,exts: '{$vo.ext}'
  371. ,size: {$vo.filesize} //限制文件大小,单位 KB
  372. ,accept: 'file' //普通文件
  373. ,done: function(res){
  374. //上传完毕回调
  375. if (res.state=="SUCCESS"){
  376. layer.msg('上传成功!')
  377. $("#btntxt_file_{$vo.fieldArr}_{$vo.name|default=''}").text('已上传');
  378. // $("#{$vo.fieldArr}_{$vo.name|default=''}").val(res.url);
  379. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").css('display','');
  380. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").attr('href',res.url);
  381. // var arr = res.url.split("/");
  382. // var download = arr[arr.length-1];
  383. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").attr('download',download);
  384. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").css('color','#000');
  385. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").html('<img src="__STATIC__/common/images/file.png" alt="" style="width: 16px;height: 16px;">下载附件');
  386. }else {
  387. $("#btntxt_file_{$vo.fieldArr}_{$vo.name|default=''}").text('点击上传');
  388. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").css('display','');
  389. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").css('color','red');
  390. // $("#download_file_{$vo.fieldArr}_{$vo.name|default=''}").text(res.state);
  391. }
  392. }
  393. ,error: function(){
  394. //请求异常回调
  395. }
  396. });
  397. });
  398. })
  399. </script>
  400. <!-- 单个文件 end -->
  401. {/case}
  402. <!-- 扩展 end -->
  403. {/eyou:switch}
  404. {/eyou:volist}