使用jQuery和Pure.CSS建立一個可編輯的表格
本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
使用開源元件真的可以容易又快速地為網站和app構建強大的前端元素。在本教程中,我會告訴你如何使用PureCSS和jQuery輕鬆地建立可編輯的表格。
如果想看教程演示的話,請點選這裡檢視。
開始
你要做的第一件事情是,在你的伺服器或本地硬碟上建立一個index.html
檔案。貼上以下基本程式碼到新建立的文件中,然後儲存。
<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>Editable table</title> <style> body{ padding: 1% 3%; color: rgb(119, 119, 119); } h1{ color:#333 } </style> </head> <body> <h1>Editable table example</h1> </body> </html>
現在我們需要獲取我們將要在此教程中使用的免費工具。第一個是Pure.CSS。這是一個非常輕巧的CSS框架,極為適合小型專案。但是你不需要下載,因為從雅虎伺服器可以直接連結。因此,你只需要貼上以下程式碼到剛建立的index.html
檔案的<head>
部分:
<link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/pure-min.css">
我們要使用第二個工具是一個簡單又甜蜜的名為editableTableWidget的jQuery外掛。在這裡下載.js
檔案並拖放到你的web伺服器或本地硬碟驅動上,並且和你建立的index.html
檔案在同一個目錄下。
都ok了?好的,讓我們搗鼓一下這些漂亮的工具吧。
HTML
因為我們要建立一個可編輯的表格,所以現在我們做的事情自然是……建立一個HTML表格了。下面是一個我們將在這個教程中使用的HTML表格。程式碼需要貼上到index.html
檔案的<body>部分:
<table id="editable" class="pure-table pure-table-bordered"> <thead> <tr> <th>#</th> <th>Make</th> <th>Model</th> <th>Year</th> </tr> </thead> <tbody> <tr> <td>1</td> <td>Honda</td> <td>Accord</td> <td>2009</td> </tr> <tr> <td>2</td> <td>Toyota</td> <td>Camry</td> <td>2012</td> </tr> <tr> <td>3</td> <td>Hyundai</td> <td>Elantra</td> <td>2010</td> </tr> </tbody> </table>
看看你的index.html
檔案:感謝Pure.CSS,使得我們基本表格看起來優雅又專業。如果你想要知道更多Pure.CSS能對HTML表格做的事情,那麼請檢視相關文件。
新增jQuery
我們的表格看起來不錯,但它仍然是靜態的。感謝jQuery和editableTableWidget外掛,我們可以讓表格變得可編輯。
要做的第一件事是連結到jQuery,因為我們要使用的外掛依賴於它。你既可以使用你自己的jQuery副本,也可以Google CDN連結,像我下面展示的那樣。我們還需要連結到我們前面下載的mindmup-editabletable.js
檔案。
將下面的程式碼插入到你的 index.html
檔案中,就在結束的</body>
標籤上面。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script> <script src="mindmup-editabletable.js"></script>
這樣做好了之後,你還需要如下所示使得HTML表格可編輯。程式碼直接放在你剛剛新增的指令碼下面。
<script> $('#editable').editableTableWidget(); </script>
完工。看看你創造了什麼:該表格現在是可編輯的了。
更進一步
現在,我們已經有了一個全功能的可編輯的表格,何不更進一步,使之更佳?第一件事是要確定特定單元格是不能被編輯的。這不是什麼大工程,只需要新增一個類到任意<td>
元素中即可:
<td class="uneditable">...</td>
然後,使用下面的JavaScript程式碼來檢測不可編輯的單元格的變化,並阻止:
$('#editable td.uneditable').on('change', function(evt, newValue) { return false; });
如果你想要在演示中測試,那麼可以嘗試編輯表格右下角上面寫著“2010”的單元格:你可以看到,該單元格的值是不可編輯的。
最後,如果你想要儲存輸入的值到資料庫也可以。對此最簡單的解決辦法是使用jQuery和Ajax自動地傳送值到PHP指令碼,PHP指令碼會處理資料並將其儲存到資料庫。
使用jQuery.post()方法,這實際上是小菜一碟。
$('#editable td').on('change', function(evt, newValue) { $.post( "script.php", { value: newValue }) .done(function( data ) { alert( "Data Loaded: " + data ); }); });
第1行中,我們使用事件偵聽器來檢查值有沒有被使用者更改。如果是的話,包含newValue
變數的.post()請求會傳送到伺服器上的PHP指令碼(script.php
,不包括在本教程中)。
譯文連結:http://www.codeceo.com/article/jquery-purecss-editable-table.html
英文原文:Create a Fancy Editable Table With jQuery and Pure.CSS
翻譯作者:碼農網 – 小峰
[ 轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]
相關文章
- (十一)可編輯表格EditorGridPanel
- element封裝可編輯表格元件封裝元件
- jQuery一步一步實現跨瀏覽器的可編輯表格,支援IE、Firefox、SafarijQuery瀏覽器Firefox
- vue+iview 實現可編輯表格VueView
- 封裝Vue Element的可編輯table表格元件封裝Vue元件
- 截圖表格轉可編輯Word文字教程
- 如何使用jQuery建立彩色條紋表格效果?jQuery
- 逆向線上遊戲:建立一個包記錄器和編輯器遊戲
- 用 RxJS 實現一個協同編輯的表格應用JS
- 開發動態編輯的表格
- ListView 可編輯View
- 分享一款可編輯本地電腦檔案的線上編輯器
- vue-split-table【表格合併和編輯外掛】Vue
- jQuery如何建立一個新的元素物件jQuery物件
- JavaScript動態建立表格和增加表格的行JavaScript
- 15 個最佳的 jQuery 表格外掛jQuery
- js如何動態建立一個table表格JS
- 從資料庫建立一個execl表格資料庫
- 在VB中編輯資料庫和電子表格 (轉)資料庫
- 25個頂級的jQuery表格外掛jQuery
- Linux Vim編輯的的配置和使用Linux
- vue中elementUI的表格實現自定義編輯VueUI
- 編寫一個非常簡單的 JavaScript 編輯器JavaScript
- jQuery table表格行的新增和刪除jQuery
- jQuery獲取表格的指定行和列jQuery
- CRM和C4C product category hierarchy的可編輯性控制邏輯Go
- 使用jQuery控制table表格的tr行顯示和隱藏效果jQuery
- 【譯】使用可編輯表示式改進除錯除錯
- 如何編寫一個Jquery外掛jQuery
- 分享一個基於jQuery的鎖定表格行列的js指令碼。jQueryJS指令碼
- C#如何建立一個可快速重複使用的專案模板C#
- 20個非常有用的jQuery表格外掛jQuery
- Vue寫一個Markdown編輯器Vue
- Dynamics 365 可編輯子網格的欄位禁用不可編輯
- Excel表格新增編輯或刪除批註Excel
- FineUI v3.2.6釋出了!(表格內編輯)UI
- jQuery學習之:jqGrid表格外掛——第一個DemojQuery
- ElementUI表格行編輯單元格編輯支援(輸入框,選擇框)DemoUI