基于jQuery實(shí)現(xiàn)表格的查看修改刪除
效果圖:

HTML:
<table id="table">
<tr>
<th>姓名</th>
<th>年齡</th>
<th>職位</th>
<th>薪資</th>
<th>操作</th>
</tr>
<tr>
<td>張三</td>
<td>23</td>
<td>前端工程師</td>
<td>10000</td>
<td>
<a href="###" class="view">查看</a>
<a href="#" class="del">刪除</a>
<a href="#" class="modify">修改</a>
</td>
</tr>
<tr>
<td>李四</td>
<td>33</td>
<td>JAVA程序猿</td>
<td>12000</td>
<td>
<a href="#" class="view">查看</a>
<a href="#" class="del">刪除</a>
<a href="#" class="modify">修改</a>
</td>
</tr>
<tr>
<td>王五</td>
<td>25</td>
<td>美工</td>
<td>9000</td>
<td>
<a href="#" class="view">查看</a>
<a href="#" class="del">刪除</a>
<a href="#" class="modify">修改</a>
</td>
</tr>
</table>
<div class="popDiv">
<p><strong>姓名:</strong><span></span></p>
<p><strong>年齡:</strong><span></span></p>
<p><strong>職位:</strong><span></span></p>
<p><strong>薪資:</strong><span></span></p>
<a href="#" class="close">關(guān)閉</a>
</div>
<div class="modifyDiv">
<p><strong>姓名:</strong><input type="text"></p>
<p><strong>年齡:</strong><input type="text"></p>
<p><strong>職位:</strong><input type="text"></p>
<p><strong>薪資:</strong><input type="text"></p>
<a href="#" class="yes">確定</a>
<a href="#" class="close">取消</a>
</div>
CSS:
#table{
border:1px solid #ccc;
border-collapse:collapse;
width:600px;}
#table tr{height:30px;}
#table tr:nth-child(2n){background-color:#eee;}
#table tr th, td{border:1px solid #ccc;text-align: center;
}
td a{
color:red;
}
.popDiv{
width:500px;
border:1px solid purple;
position:absolute;
top:50%;left:50%;
margin-left:-250px;
margin-top:-100px;
background:#fff;
padding:10px;
display:none;
z-index:3;
border:1px solid #ccc;
}
.popDiv p{border:1px solid #ccc;padding:5px;}
.modifyDiv{
width:500px;
border:1px solid purple;
position:absolute;
top:50%;left:50%;
margin-left:-250px;
margin-top:-100px;
background:#fff;
padding:10px;
display:none;
z-index:3;
border:1px solid #ccc;
}
.modifyDiv p{border:1px solid #ccc;padding:5px;}
JQ:
$(function(){
//查看
$("td a.view").click(function(){
/**添加遮罩層*/
var maskHeight=$(document).height();
var maskWidth=$(document).width();
$("<div class='mask'></div>").appendTo($("body"));
$("div.mask").css({
"opacity":0.4,
"background":"#000",
"position":"absolute",
"left":0,
"top":0,
"width":maskWidth,
"height":maskHeight,
"z-index":2
})
var arr=[];
$(this).parent().siblings().each(function(){
arr.push($(this).text());
});
$(".popDiv").show().children().each(function(i){
$(this).children("span").text(arr[i]);
});
$(".close").click(function(){
$(this).parent().hide();
$(".mask").remove();
});
});
//刪除
$("a.del").click(function(){
$(this).parents("tr").remove();
});
/*修改功能*/
})
//在頁(yè)面裝載時(shí),讓所有的td都擁有點(diǎn)擊事件
$(document).ready(function(){
//找到所有td節(jié)點(diǎn)
var tds = $("td").not(":last-child");
//給所有的td節(jié)點(diǎn)增加點(diǎn)擊事件
tds.dblclick(tdclick);
});
function tdclick(){
var clickfunction = this;
//0,獲取當(dāng)前的td節(jié)點(diǎn)
var td = $(this);
//1,取出當(dāng)前td中的文本內(nèi)容保存起來(lái)
var text = $(this).text();
//2,清空td里邊內(nèi)同
td.html("");
//3,建立一個(gè)文本框,也就是建一個(gè)input節(jié)點(diǎn)
var input = $("<input>");
//4,設(shè)置文本框中值是保存起來(lái)的文本內(nèi)容
input.attr("value",text);
//4.5讓文本框可以相應(yīng)鍵盤(pán)按下的事件
input.keyup(function(event){
//記牌器當(dāng)前用戶按下的鍵值
var myEvent = event || window.event;//獲取不同瀏覽器中的event對(duì)象
var kcode = myEvent.keyCode;
//判斷是否是回車(chē)鍵按下
if(kcode == 13){
var inputnode = $(this);
//獲取當(dāng)前文本框的內(nèi)容
var inputext = inputnode.val();
//清空td里邊的內(nèi)容,然后將內(nèi)容填充到里邊
var tdNode = inputnode.parent();
tdNode.html(inputext);
//讓td重新?lián)碛悬c(diǎn)擊事件
tdNode.click(tdclick);
}
}).blur(function(){
var inputnode = $(this);
//獲取當(dāng)前文本框的內(nèi)容
var inputext = inputnode.val();
//清空td里邊的內(nèi)容,然后將內(nèi)容填充到里邊
var tdNode = inputnode.parent();
tdNode.html(inputext);
//讓td重新?lián)碛悬c(diǎn)擊事件
tdNode.click(tdclick);
});
//5,把文本框加入到td里邊去
td.append(input);
//5.5讓文本框里邊的文章被高亮選中
//需要將jquery的對(duì)象轉(zhuǎn)換成dom對(duì)象
var inputdom = input.get(0);
inputdom.select();
//6,需要清楚td上的點(diǎn)擊事件
td.unbind("click");
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery動(dòng)態(tài)操作表單示例【基于table表格】
- jQuery+Datatables實(shí)現(xiàn)表格批量刪除功能【推薦】
- 基于jquery的實(shí)現(xiàn)簡(jiǎn)單的表格中增加或刪除下一行
- jQuery實(shí)現(xiàn)表格行和列的動(dòng)態(tài)添加與刪除方法【測(cè)試可用】
- jQuery對(duì)table表格進(jìn)行增刪改查
- 基于jQuery的動(dòng)態(tài)增刪改查表格信息,可左鍵/右鍵提示(原創(chuàng)自Zjmainstay)
- jquery動(dòng)態(tài)增加刪除表格行的小例子
- JQuery動(dòng)態(tài)添加和刪除表格行的方法
- 原生JS和JQuery動(dòng)態(tài)添加、刪除表格行的方法
- jquery動(dòng)態(tài)增加刪減表格行特效
- jQuery實(shí)現(xiàn)表格的增、刪、改操作示例
相關(guān)文章
解析prototype,JQuery中跳出each循環(huán)的方法
這篇文章主要介紹了在prototype,JQuery中跳出each循環(huán)的方法。需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12
jQuery實(shí)現(xiàn)的倒計(jì)時(shí)效果實(shí)例小結(jié)
這篇文章主要介紹了jQuery實(shí)現(xiàn)的倒計(jì)時(shí)效果,結(jié)合實(shí)例形式總結(jié)分析了jQuery針對(duì)日期與時(shí)間的運(yùn)算實(shí)現(xiàn)倒計(jì)時(shí)功能的相關(guān)技巧,需要的朋友可以參考下2016-04-04
使用jquery+iframe做一個(gè)ajax上傳效果(實(shí)例)
下面小編就為大家?guī)?lái)一篇使用jquery+iframe做一個(gè)ajax上傳效果(實(shí)例)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-08-08
jQuery實(shí)現(xiàn)手風(fēng)琴小案例
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)手風(fēng)琴小案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
jQuery實(shí)現(xiàn)的類(lèi)似淘寶網(wǎng)站搜索框樣式代碼分享
這篇文章主要介紹了類(lèi)似淘寶網(wǎng)站搜索框樣式實(shí)現(xiàn)代碼,推薦給大家,有需要的小伙伴可以參考下。2015-08-08
jquery sortable的拖動(dòng)方法示例詳解
本文以示例的方式為大家介紹下jquery sortable的拖動(dòng)方法的具體實(shí)現(xiàn),感興趣的朋友可以參考下2014-01-01
JQuery設(shè)置獲取下拉菜單某個(gè)選項(xiàng)的值(比較全)
這篇文章主要介紹了JQuery如何設(shè)置獲取下拉菜單某個(gè)選項(xiàng)的值(比較全),需要的朋友可以參考下2014-08-08

