牛骨文教育服务平台(让学习变的简单)
博文笔记

ThinkPHP ajax 二级联动菜单

创建时间:2016-02-23 投稿人: 浏览次数:1508

自己写的一个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>

希望大家多多指点,谢谢了!
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。