TP5 layui.table 查询带参数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haibo0668/article/details/83095823
  //上述方法等价于
		table.reload('demo', {
		  where: { //设定异步数据接口的额外参数,任意设
		      limit: $('#limit').val()
					,sotitle: $('#sotitle').val()
		  }
		});

例子:

<!DOCTYPE html>
<html>				
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>查看课程评论列表</title>
	<link rel="stylesheet" href="__STATIC__/layui/css/layui.css" media="all">
	<script src="__STATIC__/layui/layui.js"></script>
<link rel="stylesheet" href="__ADMIN__/css/index.css" media="all">
</head>
<body style="background-color: #FFFFFF;">
<!-- 你的HTML代码 -->
<!-- 表格 -->
<div class="layui-fluid" >
<form action="{:url('edit',['id'=>$id])}" method="post" style="margin-top: 20px;">
	     <div class="layui-inline">
        	<input class="layui-input" name="limit" id="limit" style="width: 50px;" placeholder="行数" value="{empty name="limit"}10{else /}{$limit}{/empty}" >
        </div>

        <div class="layui-inline">
        	<input class="layui-input" name="sotitle" id="sotitle" value="{$sotitle}">
        </div>

        <button class="layui-btn" id="sear" data-type="reload">搜索</button>
</form>

	<table class="layui-hide" id="demo" lay-filter="demo"></table>
	 
	<script type="text/html" id="checkboxTpl">
	  <!-- 这里的 checked 的状态只是演示 -->
	  <input type="checkbox" name="lock" value="{{d.hide}}" title="不通过" lay-filter="examine" {{ d.hide == 1 ? 'checked' : '' }}>
	</script>

</div>
<!-- 表格end -->
<script>
layui.use(['layer', 'form','jquery','table'], function(){
      var layer = layui.layer
      ,form = layui.form
      ,$= layui.$
      ,table=layui.table;
 
			table.render({
			    elem: '#demo'
			    ,url: '{:url('edit')}?action=commenttable'
			    ,limit:10
			    ,where: {id: {$id}}
			    ,cellMinWidth: 80
			    ,cols: [[
			      {type:'numbers'}
			      ,{field:'id', title:'ID', width:70}
			      ,{field:'content', title:'内容'}
			      ,{field:'hide', title:'审核', width:120, templet: '#checkboxTpl', sort: true}
			    ]]
			    ,page: true
			 });
			  //监听锁定操作
			  form.on('checkbox(lockDemo)', function(obj){
			    layer.tips(this.value + ' ' + this.name + ':'+ obj.elem.checked, obj.othis);
			  });
			  
			//排序
			table.on('sort(demo)', function(obj){ //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
			  
			  //尽管我们的 table 自带排序功能,但并没有请求服务端。
			  //有些时候,你可能需要根据当前排序的字段,重新向服务端发送请求,如:
			  table.reload('demo', {
				initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数
				,where: { //请求参数
				   field: obj.field //排序字段
				  ,order: obj.type //排序方式
				}
			  });
			});
			
  //监听工具条
  table.on('tool(demo)', function(obj){
			    var data = obj.data;

			    if(obj.event === 'examine'){
						 $.ajax({
									type: "post",
									 url: 'edit',
									 data: {id:data.id,action:'examine'},
									 success: function(data){
												 if(data['code']==1){
													   layer.msg(data['msg']);
														    setTimeout(function(){
														    	 self.location='{:url('edit')}?id={$id}';
														    },1000)
													 }else{
														   layer.msg(data['msg']);
													 }
											},
											error: function(){
													layer.msg('更新失败!');
											}
							 });
			    }
  });
  
  //上述方法等价于
		table.reload('demo', {
		  where: { //设定异步数据接口的额外参数,任意设
		      limit: $('#limit').val()
					,sotitle: $('#sotitle').val()
		  }
		});

});
</script>

</body>
</html>

控制器:

					$field=input('field');//字段
					$order=input('order');//排序方式
	    		
					//排序
					if($field){
						$od=$field." ".$order;
					}else{
						$od="id desc";
					}
					
			        if($sotitle){
			                $where['title'] = ['like', "%".$sotitle."%"];
			        }
					
	    		    $where['deleted'] = 0;//状态 0正常 1回收站
					$rsu=Db::name('comment')->where($where)->where('pid',$id)->order($od)->limit($limit)->page($page)->select();
					$rsu1=Db::name('comment')->where($where)->where('pid',$id)->select();
 
					$count = count($rsu1);//取得记录集总条数
					json(0,'数据返回成功',$count,$rsu); 
	    		    return $data;

猜你喜欢

转载自blog.csdn.net/haibo0668/article/details/83095823