基于jQuery實現(xiàn)可編輯的表格
前言
我們知道jQuery是一個輕便的JavaScript框架,里面封裝了系統(tǒng)和程序常用到的一些方法,利用CSS、HTML可以將這些內(nèi)容運用起來,做出各式各樣好看的界面,下面小編使用jQuery實現(xiàn)了一個“可編輯的表格”的例子。
代碼加說明
一、HTML代碼
1.使用<thead></thead>實現(xiàn)標頭;
2.一個table中可以包含thead和tbody
3.表頭的內(nèi)容可以放到th中。
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>JQuery實戰(zhàn)2-可編輯的表格</title> <link href="css/editTable.css" type="text/css" rel="stylesheet" /> <script type="text/javascript" src="js/jquery.js"></script> <script type="text/javascript" src="js/editTable.js"></script> </head> <body> <table> <thead> <tr> <th colspan=2>鼠標點擊表格項就可以編輯</th> </tr> </thead> <tbody> <tr> <th>學(xué)號</th> <th>姓名</th> </tr> <tr> <td>001</td> <td>周星馳</td> </tr> <tr> <td>002</td> <td>星女郎</td> </tr> <tr> <td>003</td> <td>周潤發(fā)</td> </tr> <tr> <td>004</td> <td>賭神</td> </tr> </tbody> </table> </body> </html>
二、CSS代碼
1.table{}稱作標簽選擇器,可以對整個頁面所有table產(chǎn)生影響;
2.table td{} 表示table中包含的所有td;
3.border_collapse:collape 使表格中的單元格的邊框合并
table{ border:1px solid black; border-collapse:collapse; /* 修正單元格之間的邊框不能合并的問題*/ width:400px; } table th{ border:1px solid black; width:50%; } table td{ border:1px solid black; width:50%; } tbody th{ background-color:#A3BAE9; }
三、JavaScript文件代碼
1.用來解決奇偶行背景色不同;
2.$(function(){})與$(documnet).ready(function(){})等價;
$("tbody tr") 可以返回tbody中所有tr節(jié)點;
$("tbody tr:even") 可以返回tbody中所有索引值是偶數(shù)的tr節(jié)點;
3.$()方法的參數(shù)如果是一個DOM對象時,這個方法相當(dāng)于把DOM對象轉(zhuǎn)換成jQuery對象;
$()方法的參數(shù)如果是一段正確的HTML文本,則可以創(chuàng)建一個DOM節(jié)點,并包裝成jQuery對象。
$(function(){ //找到表格偶數(shù)行 //odd是數(shù)組中下標為奇數(shù)的項,even是下標為偶數(shù)的項 $("tbody tr:even").css("background-color","#ECE9D8"); //找到所有學(xué)號的單元格 var numId=$("tbody td:even"); //給這些單元格注冊點擊事件 numId.click(function(){ //找到當(dāng)前鼠標點擊的td var tdObj=$(this); // if(tdObj.children("input").length>0){ //當(dāng)前td中的input,不執(zhí)行click處理 return false; } var text=tdObj.html(); //清空td的內(nèi)容 tdObj.html(""); //創(chuàng)建一個文本框 //去掉文本框的邊框 //文本框的文字大小16px //文本框的寬度與td相同 //設(shè)置文本框的背景色 //將td中的內(nèi)容放到文本框中 //將文本框插入到td中 var inputObj=$("<input type='text' />").css("border-width","0") .css("font-size","16px") .width(tdObj.width()) .css("background-color",tdObj.css("background-color")) .css("font",tdObj.css("font")) .val(text) .appendTo(tdObj); //文本框插入后被選中 //inputObj.get(0).select(); inputObj.trigger("focus").trigger("select"); inputObj.click(function(){ return false; }); //處理文本框的回車和Esc操作 inputObj.keyup(function(event){ //獲取鍵值 var keycode=event.which; //回車 if(keycode==13){ //獲取當(dāng)前文本框的內(nèi)容 var inputText=$(this).val(); //將td的內(nèi)容修改為文本框的內(nèi)容 tdObj.html(inputText); } //esc情況, //將td的內(nèi)容還原成text if(keycode==27){ tdObj.html(text); } }); }); });
小結(jié)
關(guān)于jQuery的學(xué)習(xí),不只是停留在例子上面,我們還要從中不斷地深入,理解并能夠運用起來。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery實現(xiàn)可編輯表格并生成json結(jié)果(實例代碼)
- jQuery 實現(xiàn)雙擊編輯表格功能
- jQuery實現(xiàn)的可編輯表格完整實例
- 基于Bootstrap使用jQuery實現(xiàn)簡單可編輯表格
- BootStrap和jQuery相結(jié)合實現(xiàn)可編輯表格
- jQuery+PHP實現(xiàn)可編輯表格字段內(nèi)容并實時保存
- jQuery(非HTML5)可編輯表格實現(xiàn)代碼
- 用Jquery實現(xiàn)可編輯表格并用AJAX提交到服務(wù)器修改數(shù)據(jù)
- jQuery一步一步實現(xiàn)跨瀏覽器的可編輯表格,支持IE、Firefox、Safari、Chrome、Opera
相關(guān)文章
Json實現(xiàn)異步請求提交評論無需跳轉(zhuǎn)其他頁面
Json實現(xiàn)異步請求,效果即為,在輸入框中輸入相關(guān)文字,點擊提交,下方會自動將書寫的文字進行展示,無需跳轉(zhuǎn)其他頁面2014-10-10jQuery實現(xiàn)按鈕只點擊一次后就取消點擊事件綁定的方法
這篇文章主要介紹了jQuery實現(xiàn)按鈕只點擊一次后就取消點擊事件綁定的方法,可實現(xiàn)點擊按鈕后取消onclick事件綁定的功能,需要的朋友可以參考下2015-06-06jQuery Mobile和HTML5開發(fā)App推廣注冊頁
jQuery Mobile和HTML5的組合可以直接開發(fā)web版的app,下面通過本教程給大家分享jQuery Mobile和HTML5開發(fā)App推廣注冊頁的實例代碼,感興趣的朋友參考下吧2016-11-11基于jquery的彈出提示框始終處于窗口的居中位置(類似于alert彈出框的效果)
之前寫的代碼,都是在當(dāng)前窗口位于居中,可是一旦窗口縮小或者放大都不是位于居中的位置了,但是一直想寫的一個類似于alert彈出窗口的效果。2011-09-09按Enter鍵觸發(fā)事件的jquery方法實現(xiàn)代碼
這篇文章主要介紹了按Enter鍵觸發(fā)事件的jquery方法,需要的朋友可以參考下2014-02-02jQuery切換網(wǎng)頁皮膚并保存到Cookie示例代碼
這篇文章主要介紹通過jQuery切換網(wǎng)頁皮膚并將狀態(tài)保存到Cookie的相關(guān)代碼,需要的朋友可以參考下2014-06-06jQuery實現(xiàn)漂亮實用的商品圖片tips提示框效果(無圖片箭頭+陰影)
這篇文章主要介紹了jQuery實現(xiàn)漂亮實用的商品圖片tips提示框效果,具有鼠標滑過顯示動態(tài)提示框的效果,涉及針對鼠標事件的響應(yīng)及頁面元素動態(tài)操作技巧,需要的朋友可以參考下2016-04-04