java无限级分类详,无限级分类的简单实现

引子

作为菜鸟的我面试过程中总是会被虐的体无完肤,即使知道是怎么一回事,但由于没有彻底掌握住,还是在关键时刻无法及时运用。所以多总结应该是我现在时常要做的事。

遇到的这个机试题就是关于无限级分类的知识。无限级分类在项目中运用是比较平常的,逻辑也不会太难理解:一个父级下面包含多个子级。

题目是这样的:点击下拉框选择,输入名称,添加,到对应的层级中。然后还要可以删除。

实现大概效果图如下:

799077d9675a

图1

799077d9675a

图2

实现

1、数据库

799077d9675a

数据库

添加的逻辑:当某行数据的pid等于另一行数据中的id时,如id为54的广州市,其pid=53,即对应的是广东省,所以广州市是在广东省下面的。以此类推。

删除的逻辑:删除某个父类,其下所有子类都需删除。

2、代码

为了效果稍微好点,采取了jq\ajax,并用了mvc框架。

Controller:

public function index()

{

$data = DB::name('user')->order('id asc')->select();

//调用树

$li = new PersonModel;

$tree = $li->getTree($data);

$html = $li->html($tree);

$this->assign('tree',$tree);

$this->assign('data',$data);

$this->assign('html',$html);

return $this->fetch();

}

public function add()

{

$data = $_POST;

$pid = $_POST['pid'];

if($data) {

if($pid == 0) {

$result &

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值