欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS實(shí)現(xiàn)一個(gè)列表中包含上移下移刪除等功能

 更新時(shí)間:2014年09月24日 15:36:14   投稿:whsnow  
一個(gè)項(xiàng)目,包括了一個(gè)列表頁(yè)其中包括在列表中實(shí)現(xiàn)上移,下移,刪除等功能,為了用戶體驗(yàn),操作均使用JS實(shí)現(xiàn)

最近做了一個(gè)項(xiàng)目,包括了一個(gè)列表頁(yè),為了用戶體驗(yàn),操作均使用JS實(shí)現(xiàn),其中包括在列表中實(shí)現(xiàn)上移,下移,刪除等功能,前臺(tái)JS,后端數(shù)據(jù)修改使用AJAX,本文主要說一下前臺(tái)JS這塊

先看一下頁(yè)面的截圖

看一下它的HTML結(jié)構(gòu),當(dāng)然,這與前臺(tái)切圖有關(guān),后端程序人員只負(fù)責(zé)寫自己的JS這塊,我以我們項(xiàng)目為例,看一下它們切的HTML

<ul class="clearfix">
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">1</em>:</span><em title="2013年 加班.txt" class="titDefaultName">2013年 加班.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">
<a value="253040" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253040" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253040" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">2</em>:</span><em title="使用說明.txt" class="titDefaultName">使用說明.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">

<a value="253041" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253041" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253041" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">3</em>:</span><em title="占占大師.txt" class="titDefaultName">占占大師.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">
<a value="253040" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253040" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253040" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
<li class="courseList">
<div class="titDefault clearfix">
<div class="left clearfix">
<span class="dragBtn"></span><span class="tit">內(nèi)容<em class="contIndex">4</em>:</span><em title="排序問題.txt" class="titDefaultName">排序問題.txt</em>
</div>
<div class="mid">2014/9/24 9:54:00</div>
<div class="right clearfix">

<a value="253041" class="moveUpBtn" href="javascript:;"><span class="delTit">上移</span></a>
<a value="253041" class="moveDownBtn" href="javascript:;"><span class="delTit">下移</span></a>
<a value="253041" class="deleteBtn" href="javascript:;"><span class="delTit">刪除</span></a>
</div>
</div>
</li>
</ul>

下面我們主要看一下JS代碼,主要使用JQ的on方法實(shí)現(xiàn)的,原因是因?yàn)榱斜淼臄?shù)據(jù)有第一次為靜態(tài)的(bind),當(dāng)排序后,數(shù)據(jù)變?yōu)閯?dòng)態(tài)的(live),所以,這種結(jié)構(gòu)只能使用on才最合理,看一下代碼

<script type="text/ecmascript">
$(function () {
//上移
$(".clearfix").on("click", ".moveUpBtn", function () {
var self = $(this);
var _old = self.closest("li.courseList");
var _new = self.closest("li.courseList").prev("li");
if (_new.length > 0) {
var _temp = _old.html();
_old.empty().append(_new.html());
_new.empty().append(_temp);
}

});

//下移
$(".clearfix").on("click", ".moveDownBtn", function () {
var self = $(this);
var _old = self.closest("li.courseList");
var _new = self.closest("li.courseList").next("li");
if (_new.length > 0) {
var _temp = _old.html();
_old.empty().append(_new.html());
_new.empty().append(_temp);
}
});

//刪除
$(".clearfix").on("click", ".deleteBtn", function () {
var self = $(this);//當(dāng)前click事件源對(duì)象
self.closest("li.courseList").remove();
});

});
</script>

運(yùn)行之后,效果就出來了,本JS中沒有把與后臺(tái)交互的AJAX方法寫出來,大家可以根據(jù)具體情況而定。

相關(guān)文章

最新評(píng)論