知识学习

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3014|回复: 0

destoon 地区默认显示两个下垃框的办法

[复制链接]

升级   100%

152

主题

0

回帖

752

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
752
发表于 2020-9-15 23:47:37 | 显示全部楼层 |阅读模式
destoon的地区选择,默认只显示一个下拉,很不友好,所以改了下,让他默认显示两个下拉框
效果如下

操作如下
打开include/post.func.php 找到
  1. function get_area_select($title = '', $areaid = 0, $extend = '', $deep = 0, $id = 1) {
  2. global $db;
  3. $parents = array();
  4. if($areaid) {
  5. $r = $db->get_one("SELECT child,arrparentid FROM {$db->pre}area WHERe areaid=$areaid");
  6. $parents = explode(',', $r['arrparentid']);
  7. if($r['child']){
  8.                     $parents[] = $areaid;
  9.                 }
  10. } else {
  11. $parents[] = 0;

  12. }
  13. $select = '';
  14. foreach($parents as $k=>$v) {
  15. if($deep && $deep <= $k) break;
  16. $v = intval($v);
  17. $select .= '<selectload_area(this.value, '.$id.');" '.$extend.'>';
  18. if($title) $select .= '<option value="'.$v.'">'.$title.'</option>';
  19. $result = $db->query("SELECT areaid,areaname FROM {$db->pre}area WHERe parentid=$v ORDER BY listorder,areaid ASC");
  20. while($a = $db->fetch_array($result)) {
  21. $selectid = isset($parents[$k+1]) ? $parents[$k+1] : $areaid;
  22. $selected = $a['areaid'] == $selectid ? ' selected' : '';
  23. $select .= '<option value="'.$a['areaid'].'"'.$selected.'>'.$a['areaname'].'</option>';
  24. }
  25. $select .= '</select> ';
  26. }
  27.       
  28. return $select;
  29. }
复制代码
将原代码修改成下面的代码
  1. function get_area_select($title = '', $areaid = 0, $extend = '', $deep = 0, $id = 1) {
  2. global $db;
  3. $parents = array();
  4.         $i = 0;
  5. if($areaid) {
  6. $r = $db->get_one("SELECT child,arrparentid FROM {$db->pre}area WHERe areaid=$areaid");
  7. $parents = explode(',', $r['arrparentid']);
  8. if($r['child']){
  9.                     $parents[] = $areaid;
  10.                 }else{
  11.                     $i = 1;
  12.                 }
  13. } else {
  14. $parents[] = 0;
  15.                 $i = 1;
  16. }
  17. $select = '';
  18. foreach($parents as $k=>$v) {
  19. if($deep && $deep <= $k) break;
  20. $v = intval($v);
  21. $select .= '<selectload_area(this.value, '.$id.');" '.$extend.'>';
  22. if($title) $select .= '<option value="'.$v.'">'.$title.'</option>';
  23. $result = $db->query("SELECT areaid,areaname FROM {$db->pre}area WHERe parentid=$v ORDER BY listorder,areaid ASC");
  24. while($a = $db->fetch_array($result)) {
  25. $selectid = isset($parents[$k+1]) ? $parents[$k+1] : $areaid;
  26. $selected = $a['areaid'] == $selectid ? ' selected' : '';
  27. $select .= '<option value="'.$a['areaid'].'"'.$selected.'>'.$a['areaname'].'</option>';
  28. }
  29. $select .= '</select> ';
  30. }
  31.         if($i){
  32.            $select .= '<select '.$extend.'>';
  33.            $select .= '<option value=" "'.$selected.'>所在城市</option>';
  34.            $select .= '</select> ';
  35.         }
  36. return $select;
  37. }
复制代码


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|知识学习 ( 鲁ICP备20015483号 )

GMT+8, 2026-5-13 21:59 , Processed in 0.098176 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表