先加载模板然后在前端HTML页面请求数据

/**
* 加载列表页模板
* @author 冯广福
*/
public function index()
{
LogWriteService::write('任务中心', '查看任务模板','查看');
$view = new View();
return $view->fetch();
} /**
* 渲染列表页数据
* @author fgf <2018-01-24 10:07:00>
*/
public function index2()
{
$index = $_POST['index'];
$pagenum = $_POST['pagenum']; // 一页显示多少个
$index = ($index - 1) * $pagenum;
$keyname = $_POST['keyname'];
$begintime = $_POST['begintime'];
$endtime = $_POST['endtime']; /*拼接搜索条件*/
$map = array();
/*时间段--搜索条件*/
if ($begintime) {
$begintime = $begintime . ' 00:00:01';
$endtime = $endtime . ' 23:59:59';
$map['a.addtime'] = ['between', [$begintime, $endtime]];
}
/*资产类型--搜索条件*/
if ($keyname) {
$map['a.template_name'] = ['like', "%" . $keyname . "%"];
}
/*查询列表数据*/
$list = Db::table('fc_template_name')->alias('a')
->field('a.*,t.tasktype,c.cycle,c.num')
->join('fc_tasktype t', 't.id=a.tasktype_id', 'left')
->join('fc_task_cycle c', 'c.id=a.taskcycle_id', 'left')
->where($map)
->order('a.id asc')
->limit($index, $pagenum)
->select();
//统计总条数
$count = Db::table('fc_template_name')->alias('a')
->where($map)
->count(); echo json_encode(array($list, $count));
}

HTML页面代码

/**
* 搜索
* @author fgf <2018-01-24 09:57:00>
*/
function btn_search() {
index2(1);
} /**
* 请求列表数据
* @author fgf <2018-01-24 09:58:00>
*/
var serialnum = '';
index2(1); // 默认执行获取数据
function index2(index){
var p = 0;
var pagenum = 10;
var keyname = $('#keyname').val();
var begintime = $('#begintime').val();
var endtime = $('#endtime').val();
$.ajax({
url: "{:url('Tasktemplate/index2')}",
type: 'POST',
data:{
index:index,
pagenum:pagenum,
keyname:keyname,
begintime:begintime,
endtime:endtime,
},
async: false,
dataType:'json',
success: function (data) {
// console.log(data);
var html = '';
p = data[1];
for(var i=0;i<data[0].length;i++){
html += '<tr><td style="text-align:center;">';
html += '<input class="list-check-box" type="checkbox" value="'+data[0][i].id+'" name="brandid"/></td>';
html += '<td style="text-align:center;">'+(++serialnum)+'</td>';
html += '<td style="text-align:center;">'+data[0][i].template_name+'</td>';
if(data[0][i].tasktype){
html += '<td style="text-align:center;">'+data[0][i].tasktype+'</td>';
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
if (data[0][i].cycle) {
if(data[0][i].num !=0){
html += '<td style="text-align:center;">'+data[0][i].num+data[0][i].cycle+'</td>';
}else{
html += '<td style="text-align:center;">'+data[0][i].cycle+'</td>';
}
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
if (data[0][i].tips) {
html += '<td style="text-align:center;">'+data[0][i].tips+'</td>';
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
if (data[0][i].prize) {
html += '<td style="text-align:center;">'+data[0][i].prize+'</td>';
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
if (data[0][i].starttime) {
html += '<td style="text-align:center;">'+data[0][i].starttime+'</td>';
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
if (data[0][i].endtime) {
html += '<td style="text-align:center;">'+data[0][i].endtime+'</td>';
}else{
html += '<td style="text-align:center;">'+'暂无'+'</td>';
}
html += '<td style="text-align:center;">';
html += '<a><span onclick="openRightBox(3,'+data[0][i].id+')" class="ht_arrow">修改</span></a>';
html += '<span class="text-explode">|</span>';
html += '<span><a style="color:red;" href="javascript:void(0)" data-update="'+ data[0][i].id +'" data-field="delete" data-action="{:url("tasktemplate/del")}">删除</a></span>';
html += '</td><td style="text-align:center;">';
html += '<i style="color: #989898;" title="详情" class="layui-icon ht_arrow" onclick="openRightBox(2,'+data[0][i].id+')"></i></td></tr>';
}
$('#list').html(html);
$('#countnum').text('总共'+p+'项');
if(p>10){
$("#countnum").show()
}else{
$("#countnum").hide()
}
window.form.render();
}
});
if(index != 1){
return;
}
var num = Math.ceil(p/pagenum);
layui.use(['laypage', 'layer'], function(){
var laypage = layui.laypage;
laypage({
cont: 'page1'
,pages: num //总页数
,groups: 5 //连续显示分页数
,skip: true
,skin: '#1E9FFF'
,jump: function(obj, first) {
//得到了当前页,用于向服务端请求对应数据
var curr = obj.curr;
serialnum = curr - 1;
if(serialnum>0){
serialnum = serialnum*10;
}
if ( !first ) {
index2(curr)
}
}
});
});
}

thinkphp5 列表页数据分页查询3-带搜索条件的更多相关文章

  1. thinkphp5 列表页数据分页查询-带搜索条件

    一.控制器部分 <?php namespace app\user\controller; use app\user\model\HelpCenterManual as HelpCenterMan ...

  2. thinkphp5 列表页数据分页查询2-带搜索条件

    一.控制器部分 <?php namespace app\user\controller; use app\index\controller\Common; use app\user\model\ ...

  3. python实现列表页数据的批量抓取练手练手的

    python实现列表页数据的批量抓取,练手的,下回带分页的 #!/usr/bin/env python # coding=utf-8 import requests from bs4 import B ...

  4. Oracle、MySql、SQLServer 数据分页查询

    最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...

  5. 织梦仿站列表页pagelist分页显示竖排,如何修改成横排?

    织梦仿站列表页pagelist分页显示竖排,如何修改成横排? 织梦列表页的分页标签是采用pagelist来进行调用的,但是很多人在调用之后会出现一个列表竖着排列的问题(横排美观度好一些),还是非常不美 ...

  6. 转Oracle、MySql、SQLServer 数据分页查询

    最近简单的对oracle,mysql,sqlserver2005的数据分页查询作了研究,把各自的查询的语句贴出来供大家学习..... (一). mysql的分页查询 mysql的分页查询是最简单的,借 ...

  7. Oracle、MySql、SQLServer数据分页查询

    看过此博文后Oracle.MySql.SQLServer 数据分页查询,在根据公司的RegionRes表格做出了 SQLserver的分页查询语句: 别名.字段 FROM( SELECT row_nu ...

  8. [.NET] SQL数据分页查询

    [.NET] SQL数据分页查询 程序下载 范例下载:点此下载 原始码下载:点此下载 NuGet封装:点此下载 数据查询 开发系统时,使用C#执行SQL查询指令,就可以从SQL数据库里查询所需数据. ...

  9. MySql数据库列表数据分页查询、全文检索API零代码实现

    数据条件查询和分页 前面文档主要介绍了元数据配置,包括表单定义和表关系管理,以及表单数据的录入,本文主要介绍数据查询和分页在crudapi中的实现. 概要 数据查询API 数据查询主要是指按照输入条件 ...

随机推荐

  1. url中特殊符号转换

    特殊符号 url中显示 空格 %20 & %26

  2. 百杂讲堂之为什么32位系统只能操作4g内存

    百杂讲堂之为什么32位系统只能操作4g内存 计算机内存中很多的单元,每一个单元就是一个字节,一个字节有8位.每一个单元有两种状态:0和1. 所以 两个单元就有4个组合: 3个单元就有8个组合: 依次类 ...

  3. golang---map类型

    map 类似其它语言中的哈希表或字典,以key-value形式存储数据 key必须是支持==或!=比较运算的类型,不可以是函数.map或slice Map查找比线性搜索快很多,但比使用索引访问数据的类 ...

  4. python 递归函数操作方法

    .递归 是指函数/过程/子程序在运行过程序中直接或间接调用自身而产生的重入现象.在计算机编程里,递归指的是一个过程:函数不断引用自身,直到引用的对象已知.使用递归解决问题,思路清晰,代码少.但是在主流 ...

  5. array_reverse()函数

    $a=array(1,2,4,5,6); print_r(array_reverse($a)); 结果:Array ( [0] => 6                              ...

  6. SQL注入之Sqli-labs系列第十一关(基于单引号的万能密码注入)

    本来以前写过sqli-labs的实战文章,但由于搞了事情,自己的服务器IP被封了,到期后又不太想续了,就一直没管.心酸的痛,都懂的....... 好了,最近这两天一口气写完前十关GET型的,现在到了P ...

  7. Oracle查询行对应block_id,file_id

    select id,rowid, dbms_rowid.rowid_object(rowid) object#, dbms_rowid.rowid_relative_fno(rowid) file#, ...

  8. python调用caffe实现预测

    对于已经训练完成的caffemodel,对于单个的图片预测,用python接口来调用是一件非常方便的事情,下面就来讲述如何用python调用已经训练完成的caffemodel,以及prototxt,网 ...

  9. 螺旋图 comet3 (comet) 不同轴的圆周运动图

    matlab 绘图 螺旋图小实例  动态显示comet3函数(comet显示平面) t=[:]; x=*t*sin(pi/).*cos(*t); y=*t*sin(pi/).*sin(*t); z=* ...

  10. Unity射线检测的用法总结

    RayCast 射线检测 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享.心 ...