mysql三级联动下拉菜单_原生的三级联动下拉框

最近在工作中遇到了一个需要三级联动的功能,之前也只用到过地区联动的三级菜单,还是用的插件,这次就不没那么好了,没办法,自己写咯,我下面的写出来的是原生的;写的不好,不要喷我

一共有三个文件,需要引入jquery;分别是,index.php,data.php和get_two.php三个文件,具体代码如下:

index.php:

include "./data.php";

?>

Document

三级联动下拉框:

一级选项

<?php foreach($result as $key=>$val): ?>

二级选项

三级选项

$("#one").change(function(){

var id =  $(this).val();

if(id){

$.post("./get_two.php",{id:id,level:2},function(data){

if(data){

console.log(data);

html='请选择';

for(var i =0 ;i

html+=''+data[i]['name']+'';

}

$("#two").empty();

$("#two").append(html);

}

},'json');

}

})

$("#two").change(function(){

var id =  $(this).val();

if(id){

$.post("./get_two.php",{id:id,level:3},function(data){

if(data){

console.log(data);

html='请选择';

for(var i =0 ;i

html+=''+data[i]['name']+'';

}

$("#three").empty();

$("#three").append(html);

}

},'json');

}

})

data.php页面:

try{

$pdo = new PDO("mysql:host=localhost;dbname=test","root","root");

}

catch(PDOException $e){

echo "数据库连接失败:".$e->getMessage();

exit;

}

$query = "select * from sanji";

$pdostatement = $pdo->query($query);

$result = $pdostatement->fetchAll(PDO::FETCH_ASSOC);

get_two.php页面:

try{

$pdo = new PDO("mysql:host=localhost;dbname=test","root","root");

}

catch(PDOException $e){

echo "数据库连接失败:".$e->getMessage();

exit;

}

$id = $_POST['id'];

$level = $_POST['level'];

$query = "select * from sanji where level = '$level' and code_name like '$id-%'";

$pdostatement = $pdo->query($query);

$result = $pdostatement->fetchAll(PDO::FETCH_ASSOC);

echo json_encode($result);

然后是数据库表:

eebcd6ade5feed5d4776962ee0495497.png

效果图:

2eb974b43b65c3f90a8d90dcdb49ce9e.png

68f724bad5a33d9a9f6bd2ca7369ecb7.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值