本文实例讲述了jQuery基于排序功能实现上移、下移的方法。分享给大家供大家参考,具体如下:
效果
思路,
跟相邻元素,互换sort。
前提是每一个元素都有自己的sort值,不为零。
<tr id="{sh:$vo.id}"> <td> <span onclick="up(this);" class="glyphicon glyphicon-arrow-up text-danger up" style="cursor: pointer;" title="上移" aria-hidden="true"></span> <span onclick="down(this);" class="glyphicon glyphicon-arrow-down text-danger down" style="cursor: pointer;" title="下移" aria-hidden="true"></span> </td> <td> <span title="{sh:$vo.user_id}">{sh:$vo.store_name}</span> </td> <td class="center"><a href="{sh:$vo.logo}" target="_blank"><img src="/UploadFiles/2021-04-02/{sh:$vo.logo}">点击,触发up方法,down方法。
获取当前id。
通过jQuery,获取相邻的元素。
// 上移 function up(obj){ var $tr = $(obj).parents("tr"); if ($tr.index() != 0) { var current_id = $tr.attr('id'); var exchange_id = $tr.prev("tr").attr('id'); $.ajax({ url: '{sh::U("Mall/ajax","todo=exchange_sort")}', type: 'POST', data: 'current_id='+current_id+'&exchange_id='+exchange_id, success:function(json) { if (json == 1) { $tr.fadeOut().fadeIn(); $tr.prev().before($tr); layer.msg('上移成功', {icon: 1}); } else { layer.msg('上移失败', {icon: 2}); } } }); } } // 下移 function down(obj) { var len = $(".down").length; var $tr = $(obj).parents("tr"); if ($tr.index() != len - 1) { var current_id = $tr.attr('id'); var exchange_id = $tr.next("tr").attr('id'); $.ajax({ url: '{sh::U("Mall/ajax","todo=exchange_sort")}', type: 'POST', data: 'current_id='+current_id+'&exchange_id='+exchange_id, success:function(json) { if (json == 1) { $tr.fadeOut().fadeIn(); $tr.next().after($tr); layer.msg('下移成功', {icon: 1}); } else { layer.msg('下移失败', {icon: 2}); } } }); } }这里用到了几个jQuery方法,prev(),next(),before(),after()。以及效果,fadeOut(),fadeIn()。以及一些简单的逻辑判断和技巧。
php后台处理,
case 'exchange_sort': $mallShopModel = M('Mall_shop'); $current_id = $this->_post('current_id','trim'); $exchange_id = $this->_post('exchange_id','trim'); $current_sort = $mallShopModel->where(array('id'=>$exchange_id))->getField('sort'); $exchange_sort = $mallShopModel->where(array('id'=>$current_id))->getField('sort'); $cdata['id'] = $current_id; $cdata['sort'] = $current_sort; $cres = $mallShopModel->save($cdata); $edata['id'] = $exchange_id; $edata['sort'] = $exchange_sort; $eres = $mallShopModel->save($edata); if ($cres !== FALSE && $eres !== FALSE){ exit('1'); } else { exit('2'); }更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery排序技巧总结》、《jQuery操作DOM节点方法总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
jQuery,排序,上移,下移
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。