使用JS批量选中功能实现更改数据库中的status状态值(批量展示)


Posted in Javascript onNovember 22, 2016

我们在开发项目的时候经常会在后台管理时用到批量展示功能来动态的修改数据库的值。下面以修改数据库的status状态值来实现批量展示功能。批量选中功能引用js来实现。

前端html代码:

<table class="mlt" style="border:1px solid red;">
<thead>
<tr>
<if condition="$type eq 'pg'">
<th colspan="9" style="text-align:left;padding-left:20px;background-color:#e5e4e4;color:#c10e23;">实物商品</th>
<else/>
<th colspan="8" style="text-align:left;padding-left:20px;background-color:#e5e4e4;color:#c10e23;">虚拟商品</th>
</if>
<th style="background-color:#e5e4e4;">
<a href="{:U('Mall/AddMall',array('type'=>$type))}" style="color:#c10e23;text-decoration:none;">+新增商品</a></th> 
</tr>
<tr>
<th style="background-color:#f7f7f7;width:8%;text-align:center;" class="lf">
<input name='chkAll' type='checkbox' id='chkAll' onClick="checkAll(this, 'id[]')" value='checkbox' /> 全选
</th>
<th style="background-color:#f7f7f7;width:8%;" class="lf">商品编号</th>
<th style="background-color:#f7f7f7;width:13%;" class="lf">名称</th>
<th style="background-color:#f7f7f7;width:18%;" class="lf">标题</th>
<if condition="$type eq 'pg'">
<th style="background-color:#f7f7f7;width:8%;" class="lf">品牌</th>
</if>
<th style="background-color:#f7f7f7;width:8%;" class="lf">组别</th>
<th style="background-color:#f7f7f7;width:5%;" class="lf">排序</th>
<th style="background-color:#f7f7f7;width:5%;" class="lf">状态</th>
<th style="background-color:#f7f7f7;width:10%;">图标</th>
<th style="background-color:#f7f7f7;text-align:center;" class="lf">操作</th>
</tr>
</thead>
<tbody>
<volist name="list" id="vo">
<tr>
<td class="lf" style="text-align:center;">
<input name='id[]' type='checkbox' value='{$vo.id}' onClick="checkItem(this, 'chkAll')">
</td>
<td class="lf">{$vo['code']}</td>
<td class="lf">{$vo['name']}</td>
<td class="lf">{$vo['title']}</td>
<if condition="$type eq 'pg'">
<td class="lf">{$vo['brand']}</td>
</if>
<td class="lf">{$vo['ggroup']}</td>
<td class="lf">{$vo['sortno']}</td>
<td class="lf"><if condition="$vo['status'] eq 1">展示<else/>不展示</if></td>
<td><img src="{$vo['base_img']}" style="width:40px;" /></td>
<td class="lf" style="text-align:center;">
<a href="{:U('Mall/NextLevel',array('pid'=>$vo['id']))}" class='cz' style="text-decoration:none;">编辑子信息</a>
<a href="{:U('Mall/UpdateMall',array('id'=>$vo['id']))}" class='cz' style="text-decoration:none;margin:0 7px;">编辑</a>
<a href="{$Think.config.WEB_URL}/Shop/GoodsDetails.html?pid={$vo['id']}&type={$vo['type']}" class='cz' style="text-decoration:none;" target="_Blank">查看</a>
</td>
</tr>
</volist>
<tr height="45">
<td colspan="10" style="text-align:left;padding-left:40px;">
<input type="button" id="btn_show" value="批量展示" class="btn_normal" style="width:100px;margin-left:20px;">
</td> 
</tr>
</tbody>
</table>
<div>{$page}</div>

js代码使用ajax提交代码到后台GoodsShow()方法:

<script type="text/javascript">
var ids = []; //把得到的is转化为数组形式
$('#btn_show').click(function(){
btnCheck('展示');
data = {
"ids":ids
};
$.ajax({
type:"POST",
url:"{:U('Mall/GoodsShow')}",
data:data,
//dataType:"json",
success:function(msg){
if(msg == 00){ //如果msg=00则修改成功
alert("批量展示成功");
window.location.href='/index.php/Admin/Mall/MallList'; //修改完成后自动刷新
}else{
alert("批量展示失败,请重新编辑");
}
},
error:function(){
alert("批量编辑失败,请重新编辑"); //错误提示
}
}); 
});function btnCheck(info){ 
var obj = $("input[name='id[]']:checked").each(function(){ //得到选中的id的每一个值并且这个值为一个数组
ids.push($(this).val()); 
});
if (ids == false) { 
alert("请选定要"+info+"的商品");
return false;
}else {
return ids; 
}
}
</script>

后台GoodsShow()方法:

public function GoodsShow(){
$goods=M('shop_goods_info'); //实例化要使用的数据表
$data = I(); //获取前台页面获取的id值(这个值为一个一位数组)
//var_dump(I('ids'));die(); //打印
$id=implode(',',I('ids')); //把得到的这个数组用implode方法拆分 
//var_dump(I('id'));die(); //打印查看
$order=$goods->where("id in ($id)")->setField('status','1'); //用得到的$id的值匹配数据库中的id值,并设置id下的status字段值为1.
if($order>=1){ // 如果...else... 
$remark="00";
}else{
$remark="01";
}
echo $remark;
}

以上所述是小编给大家介绍的使用JS批量选中功能实现更改数据库中的status状态值(批量展示),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript学习点滴 call、apply的区别
Oct 22 Javascript
jquery分页插件AmSetPager(自写)
Apr 15 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
Aug 19 Javascript
javascript模拟C#格式化字符串
Aug 26 Javascript
Node.js刷新session过期时间的实现方法推荐
May 18 Javascript
微信小程序 progress组件详解及实例代码
Oct 25 Javascript
用jQuery实现优酷首页轮播图
Jan 09 Javascript
关于单文件组件.vue的使用
Sep 20 Javascript
微信小程序实现授权登录
May 15 Javascript
javascript异步编程的六种方式总结
May 17 Javascript
微信小程序基于ColorUI构建皮皮虾短视频去水印组件
Nov 04 Javascript
Vue.Draggable实现交换位置
Apr 07 Vue.js
AngularJS中指令的四种基本形式实例分析
Nov 22 #Javascript
AngularJS中directive指令使用之事件绑定与指令交互用法示例
Nov 22 #Javascript
微信小程序-图片、录音、音频播放、音乐播放、视频、文件代码实例
Nov 22 #Javascript
详解js中Json的语法与格式
Nov 22 #Javascript
AngularJS中一般函数参数传递用法分析
Nov 22 #Javascript
javascript入门之string对象【新手必看】
Nov 22 #Javascript
模板视图和AngularJS之间冲突的解决方法
Nov 22 #Javascript
You might like
Laravel 5.3 学习笔记之 配置
2016/08/28 PHP
源码分析 Laravel 重复执行同一个队列任务的原因
2017/12/25 PHP
laravel框架中间件 except 和 only 的用法示例
2019/07/12 PHP
索趣科技的答案
2007/02/07 Javascript
jQuery中bind与live的用法及区别小结
2014/01/27 Javascript
jQuery自定义事件的简单实现代码
2014/01/27 Javascript
Javascript学习笔记之 对象篇(三) : hasOwnProperty
2014/06/24 Javascript
jquery.ajax之beforeSend方法使用介绍
2014/12/08 Javascript
如何使用jQuery技术开发ios风格的页面导航菜单
2015/07/29 Javascript
thinkphp实现无限分类(使用递归)
2015/12/19 Javascript
详解js的异步编程技术的方法
2017/02/09 Javascript
详解Vue中添加过渡效果
2017/03/20 Javascript
ES6 Promise对象概念与用法分析
2017/04/01 Javascript
vue-router 组件复用问题详解
2018/01/22 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
JS实现的杨辉三角【帕斯卡三角形】算法示例
2019/02/26 Javascript
JS实现可用滑块滑动的缓动图代码
2019/09/01 Javascript
微信小程序定义和调用全局变量globalData的实现
2019/11/01 Javascript
ng-alain的sf如何自定义部件的流程
2020/06/12 Javascript
Python中使用socket发送HTTP请求数据接收不完整问题解决方法
2015/02/04 Python
浅谈Python生成器generator之next和send的运行流程(详解)
2017/05/08 Python
python获取外网IP并发邮件的实现方法
2017/10/01 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
python实现大转盘抽奖效果
2019/01/22 Python
使用python绘制二维图形示例
2019/11/22 Python
Python如何截图保存的三种方法(小结)
2020/09/01 Python
Django怎么在admin后台注册数据库表
2020/11/14 Python
美国殿堂级滑板、冲浪、滑雪服装品牌:Volcom(钻石)
2017/04/20 全球购物
Aeropostale官网:美国著名校园品牌及青少年服饰品牌
2019/03/21 全球购物
西雅图电动自行车公司:Rad Power Bikes
2020/02/02 全球购物
文化建设工作方案
2014/05/12 职场文书
出售房屋委托书范本
2014/09/24 职场文书
个人贷款收入证明
2014/10/26 职场文书
2014小学二年级班主任工作总结
2014/12/05 职场文书
兴趣班停课通知
2015/04/24 职场文书
2016年安全生产先进个人事迹材料
2016/02/29 职场文书