thinkphp ajax添加及删除
写在前面的话:应客户需求需要给后台增加自助添加电影名称和链接的功能,添加后在微信前台能自动读取显示。
开发步骤:
1、由于是给后台添加一个增加电影及电影链接的功能,所以控制器在Admin下。
在路径 Application\Lib\Action\Admin 下新建控制器 MvaddAction.class.php
控制器全部代码如下:
<?php
//继承PublicAction后访问本页面时必须先登录后台
class MvaddAction extends PublicAction {
public function index() {
$result = M("movie")->select();
//var_dump($result);exit;
$this->assign("name",$result);
$this->display ();
}
public function add() {
$data["mvname"] = $_POST["name"];
$data["mvlink"] = $_POST["mvlink"];
$result = M("movie")->add($data);
if($result){
$this->ajaxReturn($result,"新增成功!",1);
//echo "ok";
}
}
public function del(){
$id = $_POST[‘id‘];
$result = M("movie")->where(array("id"=>$id))->delete();
if($result){
$this->ajaxReturn($result,"删除成功!",1);
}
}
public function show(){
$id = $_GET[‘id‘];
$link = M("movie")->where(array("id"=>$id))->find();
$this->assign("link",$link[‘mvlink‘]);
$this->display();
}
}
2、添加模板
在 Application\Tpl\Admin\Mvadd 目录下添加静态页面模板 index.html
静态页面为已经全部开发完成的页面。
前端框架采用bootstrap
<!DOCTYPE HTML>
<html lang="zh-CN">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link href="//cdn.bootcss.com/bootstrap/4.0.0-alpha.4/css/bootstrap.css" rel="stylesheet">
</head>
<script src="http://www1.qixoo.com/jquery-1.4.1.min.js"></script>
<body>
<form role="form" action="#">
<div class="form-group">
<label for="exampleInputEmail1">电影名称</label>
<input type="text" class="form-control" id="mvname" placeholder="请输入电影名称 如:精品电影">
</div>
<div class="form-group" >
<label for="exampleInputPassword1">电影链接</label>
<input type="text" class="form-control" id="mvlink" placeholder="电影链接:如 http://www.029gc.cn">
</div>
<button type="button" id="add" class="btn btn-primary btn-lg btn-block" style="width:20%;align:center;">保存</button>
</form>
<table class="table table-bordered">
<tr id="tr"><td>名称</td><td>链接</td><td>操作</td></tr>
<foreach name="name" item="vo">
<tr id="{$vo.id}tr"><td>{$vo.mvname}</td><td>{$vo.mvlink}</td><td><a href="javascript:void(0)" onclick=dellink({$vo.id});>删除</a></td></tr>
</foreach>
</table>
</body>
<SCRIPT type=text/javascript>
$("#add").click(function (){
var name = $("#mvname").val();
var link = $("#mvlink").val();
if(name==""||link==""){
alert("电影名称或链接不能为空");
return;
}else{
$.ajax({
url: "../index.php?g=Admin&m=Mvadd&a=add",
type: "POST",
data:{"name":name,"mvlink":link},
dataType: "json",
error: function(){
alert(‘Error loading XML document‘);
},
success: function(data){
alert(data.info);
$("#tr").after("<tr id="+data.data+"tr><td>"+name+"</td><td>"+link+"</td><td><a href=‘javascript:void(0)‘ onclick=dellink1("+data.data+");>删除</a></td></tr>")
}
});
}
});
function dellink(id){
$.ajax({
url: "../index.php?g=Admin&m=Mvadd&a=del",
type: "POST",
data:{"id":id},
dataType: "json",
error: function(){
alert(‘Error loading XML document‘);
},
success: function(data){
alert(data.info);
$("#"+id+"tr").remove();
}
});
}
</SCRIPT>
</html>
技术点:
动态增加和删除表格中的数据。
thinkphp ajax添加及删除的更多相关文章
- MVC5 网站开发之六 管理员 2、添加、删除、重置密码、修改密码、列表浏览
目录 奔跑吧,代码小哥! MVC5网站开发之一 总体概述 MVC5 网站开发之二 创建项目 MVC5 网站开发之三 数据存储层功能实现 MVC5 网站开发之四 业务逻辑层的架构和基本功能 MVC5 网 ...
- 打通前后端全栈开发node+vue进阶【课程学习系统项目实战详细讲解】(3):用户添加/修改/删除 vue表格组件 vue分页组件
第三章 建议学习时间8小时 总项目预计10章 学习方式:详细阅读,并手动实现相关代码(如果没有node和vue基础,请学习前面的vue和node基础博客[共10章] 演示地址:后台:demo ...
- Thinkphp+Ajax带关键词搜索列表无刷新分页实例
Thinkphp+Ajax带关键词搜索列表无刷新分页实例,两个查询条件,分页和搜索关键字,懂的朋友还可以添加其他分页参数. 搜索#keyword和加载内容区域#ajax_lists <input ...
- 利用jquery动态添加和删除表格的一行,并且保存单行数据
开发时遇到一个需求:要求要在页面的表格可以添加和删除一行,并能填写对应的数据后保存这一行数据. HTML代码 界面使用了freemarker框架,teams是后台传过来的list类型数据 <fo ...
- 3、尚硅谷_SSM高级整合_使用ajax操作实现删除的功能
点击删除的时候,要删除联系人,这里同点击编辑按钮一样给删除按钮添加点击事件的时候不能使用 $(".delete_btn").click(function(){ }); 这种方式,因 ...
- Maven+ajax+SSM实现删除
转载自:https://www.cnblogs.com/kebibuluan/p/9020381.html 3.尚硅谷_SSM高级整合_使用ajax操作实现删除的功能 点击删除的时候,要删除联系人,这 ...
- [vs2008]Visual Studio 2008 SP1添加或删除功能提示查找SQLSysClrTypes.msi文件
前言 今天接到领导布置的一个任务,是之前同事负责的项目.离职了,现在客户有些地方需要修改,由于我之前参与过,就落在我的头上了. 然后我就把代码弄了过来,打开发现其中需要用到水晶报表.(我觉得不好用,不 ...
- JavaWeb_day03_员工信息添加修改删除
day03员工的添加,修改,删除 修改功能 思路 : 点击修改员工数据之后,跳转到单行文本,查询要修改的员工id的全部信息,主键id设置为readonly,其余的都可以修改, 修改之后,提交按钮,提交 ...
- 原生js事件的添加和删除
在IE浏览器中添加或删除事件用attachEvent.detachEvent.在其他标准浏览器中则用addEventListener.removeEventListener.下面的对事件的添加和删除做 ...
随机推荐
- emberjs重写补充类之reopen方法和reopenClass方法
无需一次性将类定义完全,你可以使用reopen方法来重新打开(reopen)一个类并为其定义新的属性. Person.reopen({ isPerson: true }); Person.create ...
- TP快捷函数
U();创建URL地址 C();获取或设置系统变量信息 A();实例化控制器对象 R():实例化控制器对象且同时调用控制器里的某个方法 I();过滤表单提交的数据,代替$_POST
- mysqli预处理和事务处理
1 应用环境 mysqli预处理功能(大量数据处理时使用) 2 步骤 a)mysqli连接数据库 $mysqli = new mysqli('localhost','root','root','chu ...
- 使用CuteSlider做网站炫酷的幻灯片
cuteSlider 1.预览 官网:http://www.cuteslider.com/ 应用:http://www.dutphonelab.org/ 2.资料 文档:http://pan.baid ...
- 纯CSS3实现兔斯基简单害羞表情
前言 很不巧前天突然就感冒了,都怪自己吃太多饼干导致上火了.整个人都无精打采.本来想多做几个兔斯基表情的,但身体发热很难受.所以就只完成一个简单点的表情耍一耍. 正文 先看一下这个简单到不能再简单的小 ...
- iOS原生地图开发详解
在上一篇博客中:http://my.oschina.net/u/2340880/blog/414760.对iOS中的定位服务进行了详细的介绍与参数说明,在开发中,地位服务往往与地图框架结合使用,这篇博 ...
- Android中Intent传值与Bundle传值的区别详解
Android中Intent传值与Bundle传值的区别详解 举个例子我现在要从A界面跳转到B界面或者C界面 这样的话 我就需要写2个Intent如果你还要涉及的传值的话 你的Intent就要写两 ...
- Entity Framework版本历史概览
转自:http://www.cnblogs.com/fecktty2013/archive/2014/09/26/entityframework-overview.html EF版本 .net fra ...
- 解析 HTTP(HttpURLConnection getResponseCode)
HTTP 请求 客户端通过发送 HTTP 请求向服务器请求对资源的访问.HTTP 请求由三部分组成,分别是:请求行.消息报头和请求征文. 3.1.请求行 请求行以一个方法符号开头,后面跟着请求 URI ...
- Kinect for Windows SDK开发初体验(一)环境配置
1.开发环境需求 (1).硬件需求 a.需要拥有双核,2.66GHz以上的CPU. b.显卡支持Microsoft DirectX 9.0c; c.2GB的内存 d.Kinect for Window ...