您的位置:首页 > 编程语言 > PHP开发

ThinkPHP ajax 二级联动菜单

2016-02-23 14:18 561 查看
自己写的一个ThinkPHPajax二级菜单联动,写的不好,希望大家改进改进

IndexContr.class.php

class IndexAction extends Action {
public function index(){
$db = M("Sort");
if(IS_POST){
if($_POST['two'] == ""){
$sort = $_POST['sort_id'];
}else{
$sort = $_POST['two'];
}
var_dump($sort);
die;
}else{
$list = $db -> where('aid = 0') -> select();
$this -> assign('list',$list);
$this -> display();
}

}

public function sortlist(){
$db = M("Sort");
$data = array();
$data = $db -> where('aid=%d',$_POST['aid']) -> select();
$this -> ajaxReturn($data);
}
}

模板文件的html代码
<html>
<head>
<script type="text/javascript" src="__PUBLIC__/js/jquery-1.9.1.min.js"></script>
</head>
<body>
<div>
<form method="post" action="">
<div class="sortlist">
<div style="float:left">
<select name="sort_id" id="one">
<volist name="list" id="v">
<option value="{$v.id}" data="{$v.two_list}">{$v.name}</option>
</volist>
</select>
</div>
<div class="hello" style="float:left"></div>
<div><input type="submit" value="提交"></div>
</div>
</form>
</div>
<script type="text/javascript">
$(function(){
var id = $("#one").val();
$.ajax({
url:"{:U('Index/sortlist')}",
type:'POST',
cache:false,
dataType:'JSON',
data:{aid:id},
success:function(data){
if(data == null){
$('.hello').html('');
}else{
var html = '';
html += '<select name="two">';
$.each(data,function(k,v){
html += '<option value="'+v.id+'">'+v.name+'</option>'
})
html += '</select>';
$('.hello').html(html);
}
}
});

$("#one").change(function(){
var id = $(this).val();
$.ajax({
url:"{:U('Index/sortlist')}",
type:'POST',
cache:false,
dataType:'JSON',
data:{aid:id},
success:function(data){
if(data == null){
$('.hello').html('');
}else{

var html = '';
html += '<select name="two">';
$.each(data,function(k,v){
html += '<option value="'+v.id+'">'+v.name+'</option>'
})
html += '</select>';
$('.hello').html(html);
}
}
});
})

})
</script>
</body>
</html>

希望大家多多指点,谢谢了!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: