TP5中即点即改,json分页,单删
HTML页面:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<center>
<table>
<tr>
<td><input type="checkbox"></td>
<td>位置</td>
<td>房源</td>
<td>房源面积</td>
<td>计租面积</td>
<td>户型</td>
<td>建筑结构</td>
<td>租赁性质</td>
<td>状态</td>
{switch name="$list.u_name"}
{case value="root"} <td>操作</td>{/case}
{case value="admin"}{/case}
{/switch} </tr>
<tbody class="tby">
{volist name="list.data" id="v"}
<tr id="{$v.f_id}">
<td><input type="checkbox" class="box"></td>
<td>{$v.f_wei}</td>
{switch name="$list.u_name"}
{case value="root"} <td class="ww" fd="f_name">{$v.f_name}</td>{/case}
{case value="admin"}<td >{$v.f_name}</td>{/case}
{/switch}
<td>{$v.f_mian}</td>
<td>{$v.f_ji}</td>
<td>{$v.f_hu}</td>
<td>{$v.f_jian}</td>
<td>{$v.f_zu}</td>
<td>{$v.f_static}</td>
{switch name="$list.u_name"}
{case value="root"} <td><a href="javascript:void(0);" class="shan">删除</a></td>{/case}
{case value="admin"}{/case}
{/switch}
</tr>
{/volist}
</tbody>
<input type="hidden" value="1" class="shou_page">
<input type="hidden" value="{$list.zong_page}" class="wei_page">
</table>
<button class="pre">首页</button>
<button class="pre">上一页</button>
<button class="pre">下一页</button>
<button class="pre">尾页</button>
</center>
<script src="__STATIC__/js/jquery.min.js"></script>
<script>
//即点即改
$(document).on("dblclick",".ww",function () {
var fd_val=$(this).attr("fd");
var html_val=$(this).text();
var id=$(this).parents("tr").attr("id");
//替换
$(this).html('<input type="text" id="'+fd_val+html_val+'" value="'+html_val+'">') $("#"+fd_val+html_val).blur(function () {
var new_val=$(this).val();
$(this).parents("td").text(new_val);
//请求
$.post(
"{:url('access/ji_gai')}",
{
id:id,
new_val:new_val,
fd_val:fd_val
},
function (data) { }
)
})
})
//分页
$(document).on("click",".pre",function () {
var pre=$(this).text();
var shou_page=$(".shou_page").val();
var wei_page=$(".wei_page").val();
var p="";
if(pre=="首页")
{
p=1;
}else if(pre=="上一页")
{
p=parseInt(shou_page)-1<1?1:parseInt(shou_page)-1;
}else if(pre=="下一页")
{
p=parseInt(shou_page)+1>wei_page?wei_page:parseInt(shou_page)+1;
}else if(pre=="尾页")
{
p=wei_page;
}
//请求
$.post(
"{:url('access/show_json')}",
{
page:p
},
function (data) {
var res=JSON.parse(data)
var res_list=res.data
var name=res.u_name
if(name=="root")
{
var aa=' <td><a href="javascript:void(0);" class="shan">删除</a></td>';
var bb='class="ww" fd="f_name"';
}
var str="";
$.each(res_list,function (k, v) {
str+='<tr id="'+v.f_id+'">';
str+='<td><input type="checkbox" class="box"></td>'
str+='<td>'+v.f_wei+'</td>'
str+='<td '+bb+'>'+v.f_name+'</td>'
str+='<td>'+v.f_mian+'</td>'
str+='<td>'+v.f_ji+'</td>'
str+='<td>'+v.f_hu+'</td>'
str+='<td>'+v.f_jian+'</td>'
str+='<td>'+v.f_zu+'</td>'
str+='<td>'+v.f_static+'</td>'
str+=''+aa+'';
str+='</tr>';
})
$(".tby").html(str)
$(".shou_page").val(p)
}
) })
//删除
$(document).on("click",".shan",function () {
var id=$(this).parents("tr").attr("id");
//请求
$.post(
"{:url('access/dan_del')}",
{
id:id
},
function (data) {
var re=JSON.parse(data)
if(re==1)
{
alert("单删成功")
document.getElementById(id).remove();
}else if(re==2)
{
alert("单删失败")
}
}
)
})
</script>
</body>
</html>
PHP页面:
<?php
namespace app\index\controller; use think\Controller;
use think\Db;
use think\Request;
use think\Session;
use app\index\model\Fang_yuan;
use app\index\controller\Commen;
class Access extends Commen
{
//页面分页展示
public function fang_list()
{
$user=Session::get("user",'think');
$u_name=$user['u_name'];
$p=Request::instance()->param("page");
$page=empty($p)?1:$p;
$count=Db::table("fang_yuan")->count();
$tiao=3;
$zong_page=ceil($count/$tiao);
$limit=($page-1)*$tiao;
$data=Db::table("fang_yuan")->limit($limit,$tiao)->select();
$list=['data'=>$data,'zong_page'=>$zong_page,'u_name'=>$u_name];
return view("show",['list'=>$list]);
}
//分页的json格式
public function show_json()
{
$user=Session::get("user",'think');
$u_name=$user['u_name'];
$p=Request::instance()->param("page");
$page=empty($p)?1:$p;
$count=Db::table("fang_yuan")->count();
$tiao=3;
$zong_page=ceil($count/$tiao);
$limit=($page-1)*$tiao;
$data=Db::table("fang_yuan")->limit($limit,$tiao)->select();
$list=['data'=>$data,'zong_page'=>$zong_page,'u_name'=>$u_name];
echo json_encode($list);
}
//单删
public function dan_del()
{
$id=Request::instance()->param("id");
$aa=new Fang_yuan();
$a=$aa->del($id);
if($a)
{
echo json_encode(1);
}else{
echo json_encode(2);
}
}
//即点即改
public function ji_gai()
{
$id=Request::instance()->param("id");
$new_val=Request::instance()->param("new_val");
$fd_val=Request::instance()->param("fd_val");
$a=Db::table("fang_yuan")->where("f_id='$id'")->update(["$fd_val"=>"$new_val"]);
if($a)
{
return 1;
}else{
return 2;
}
}
}
TP5中即点即改,json分页,单删的更多相关文章
- jquery实现分页+单删批删
//定义一个分页的方法 public function fenye(){ //查询满足条件的总条数 $count = M("regis")->count(); //设置每页显 ...
- tp5中的一些小方法
// 当使用一个新页面替换当前页面的body后,body刷新了,所选择的select值就不能保存住,解决方法如下: 作业题目<select> <option>--请选择--&l ...
- EasyUI学习笔记(1)----Tree控件实现过程中.NET下无法访问json数据的解决办法
直接调用官网的Demo中的方法 , 将json数据存储在同目录下,但是在运行之后树没有出现,用FireBug调试,错误如下 不允许访问json数据,刚开始以为是权限不够,然后又给解决方案所在的文件夹设 ...
- TP5中隐藏入口文件的问题 - CSDN博客
使用phpstudy和linux部署的时候 tp5中的官方说明是在入口文件的同级目录下添加一个.htaccess文件 文件内容如下: <IfModule mod_rewrite.c>Opt ...
- 利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理
在Asp.net Web API中,对业务数据的分页查询处理是一个非常常见的接口,我们需要在查询条件对象中,定义好相应业务的查询参数,排序信息,请求记录数和每页大小信息等内容,根据这些查询信息,我们在 ...
- asp.net中webservice与android的json数据交互方式设置
一 .服务器端设置 1.修改web.config 在web.config里面的的system.Web节点添加 <webServices> <protocols> <add ...
- Upcase 将edit1中的每个字符串改为首字母大写
//将edit1中的每个字符串改为首字母大写 procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin with ...
- PHP中遍历stdclass object 及 json
原文:PHP中遍历stdclass object 及 json (从网上找的模拟实例)需要操作的数据: $test=Array ( [0] => stdClass Object ( [tags] ...
- 网页中如何用 CSS 设置打印分页符
Word 中按 Ctrl + Enter 创建一个分页符,方便打印,其实网页中也可以,用 CSS 的 page-break-after:always;. <p>第 1 页</p> ...
随机推荐
- 倍数|计蒜客2019蓝桥杯省赛 B 组模拟赛(一)
思路:从l枚举到r肯定超时,这时我们要转变思路!题目让我们求一个区间内的d的倍数,只需要求出r/d - l/d就是区间内d倍数的个数. 代码: #include <iostream> us ...
- Mysql优化知识点总结(转自CS-Notes)
转载地址:https://github.com/CyC2018/CS-Notes/blob/master/notes/MySQL.md 一.索引 B+ Tree 原理 MySQL 索引 索引优化 索引 ...
- 题解——牛客网OI赛制测试赛2
T1 规律题 考虑先全部选中再去重即可 #include <cstdio> #include <algorithm> #include <cstring> #inc ...
- Android四种布局方式
线性布局 <LinearLayout android:layout_width="match_parent" android:layout_height="wrap ...
- 基于SVM的python简单实现验证码识别
验证码识别是一个适合入门机器学习的项目,之前用knn 做过一个很简单的,这次用svm来实现.svm直接用了开源的库libsvm.验证码选的比较简单,代码也写得略乱,大家看看就好. 1. 爬取验证码图片 ...
- latex建立参考文献的超链接
在Latex生成的pdf文档中建立超链接(如从正文到参考文献,从目录到相应内容,从页码编号到实际页面等),有利于读者快速定位当前阅读的信息. 如何在生成的pdf文件中包含超链接呢?需要注意一下两点: ...
- 【Selenium2】【Python多线程】
# all_tests_pro.py import unittest,time,os,multiprocessingimport HTMLTestRunner #查找多有含有thread的文件,文件夹 ...
- 数据库无法打开到SQL Server连接
今天打开数据库,发现连接不上,弹出错误提示: 打开SQLServer Configuration Manager,发现SQL Server状态已经停止,双击启动弹出错误提示: 打开SQL Server ...
- 清除div重叠浮动的方法
在最后加入这样一个div. 并且为div加入以下属性: .clear { clear:both;}
- 一个请求需要调用两个不同的数据库 添加DbContext
当请求进入application中的方法时 会开启一个工作单元 这里面调用不同的DbContext 会默认使用第一次调用的DbContext 需要手动开启工作单元来隔离两个不同的DbContex ...