JavaScript操作表格進行拖拽排序

?

?

<js-dodo-table-

Drag and Drop JQuery plugin

>

以上插件可對table進行排序,拖動!

?

例如有下面一個樣子的id為table的表格:

<table?id="table"?cellspacing="0"?cellpadding="2">
????
<tr?id="1"><td>1</td><td>One</td><td>some?text</td></tr>
????
<tr?id="2"><td>2</td><td>Two</td><td>some?text</td></tr>
????
<tr?id="3"><td>3</td><td>Three</td><td>some?text</td></tr>
????
<tr?id="4"><td>4</td><td>Four</td><td>some?text</td></tr>
????
<tr?id="5"><td>5</td><td>Five</td><td>some?text</td></tr>
????
<tr?id="6"><td>6</td><td>Six</td><td>some?text</td></tr>
</table>

?

-使用此方法需先引入jquery.js文件

<script?type="text/javascript">
$(document).ready(
function()?{
????
//?Initialise?the?table
????$("#table").tableDnD();
});
</script>

?

-

如此,則能輕松對表格進行排序!

如果需要將排序完成后表格的row id輸出排序后的數組,則使用如下方法:

$('#table').tableDnD({
????????onDrop:?
function(table,?row)?{
????????????alert($.tableDnD.serialize());
????????}
????});

?

而我在用這個的時候,并不是用的它的排序結果,而是自己手寫了一個遍歷表格后,取出每一行的id的代碼片段。
這段小代碼很簡單,如下:


????????$(document).ready(
function()?{

????????????$(
"#table").tableDnD({
????????????????
//當拖動排序完成后
????????????????onDrop:?function()?{
????????????????????
//獲取id為table的元素
????????????????????var?table?=?document.getElementById("table");
????????????????????
//獲取table元素所包含的tr元素集合
????????????????????var?tr?=?table.getElementsByTagName("tr");
????????????????????
//遍歷所有的tr
????????????????????for?(var?i?=?0;?i?<?tr.length;?i++)?{
????????????????????????
//獲取拖動排序結束后新表格中,row?id的結果
????????????????????????var?rowid?=?tr[i].getAttribute("id");
????????????????????????alert(rowid);
????????????????????}
????????????????}
????????????});
????????????
????????});

?

?

?

,zuihou 最后給出這個表格拖動排序的demo。

沒有任何技術含量,別人寫的插件,僅僅是插件應用的簡單介紹而已。讓您賤笑了。

?

ExpandedBlockStart.gifJavaScript HTML
<!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html?xmlns="http://www.w3.org/1999/xhtml">
<head>
????
<title>JavaScript表格拖動排序</title>
????
<script?src="js/jquery.js"?type="text/javascript"></script>
????
<script?src="js/tablednd.js"?type="text/javascript"></script>
????
<script?type="text/javascript">

????????$(document).ready(
function()?{

????????????$(
"#table").tableDnD({
????????????????
//當拖動排序完成后
????????????????onDrop:?function()?{
????????????????????
//獲取id為table的元素
????????????????????var?table?=?document.getElementById("table");
????????????????????
//獲取table元素所包含的tr元素集合
????????????????????var?tr?=?table.getElementsByTagName("tr");
????????????????????
//遍歷所有的tr
????????????????????for?(var?i?=?0;?i?<?tr.length;?i++)?{
????????????????????????
//獲取拖動排序結束后新表格中,row?id的結果
????????????????????????var?rowid?=?tr[i].getAttribute("id");
????????????????????????alert(
"排序完成后表格的第?"?+?(i+1)?+?"?行id為?:?"?+?rowid);
????????????????????}
????????????????}
????????????});

????????});

????
????
</script>
</head>
<body>

用鼠標移動TR
<br/>

<div?style="?margin:100px;">

????
<table?id="table"?width="600"?border="0">

????????????
<tr?id="row_1"??style="width:600px;?height:20px;?background-color:Olive;">
????????????????
<td?style="">1</td>
????????????????
<td>parentElement</td>
????????????????
<td>moveRow?1</td>
????????????????
<td>parentElement</td>
????????????
</tr>
????????????
<tr?id="row_2"??style="?width:600px;height:20px;?background-color:Green;">
????????????????
<td?style="?">2</td>
????????????????
<td>parentElement</td>
????????????????
<td>moveRow?2</td>
????????????????
<td>parentElement</td>
????????????
</tr>
????????????
<tr?id="row_3"??style="width:600px;?height:20px;?background-color:Gray;">
????????????????
<td?style="?">3</td>
????????????????
<td>parentElement</td>
????????????????
<td>moveRow?3</td>
????????????????
<td>parentElement</td>
????????????
</tr>
????????????
<tr?id="row_4"??style="?width:600px;?height:20px;background-color:Red;">
????????????????
<td?style="?">4</td>
????????????????
<td>parentElement</td>
????????????????
<td>moveRow?4</td>
????????????????
<td>parentElement</td>
????????????
</tr>
????????????
<tr?id="row_5"??style="width:600px;??height:20px;background-color:#ccc;">
????????????????
<td?style="">5</td>
????????????????
<td>parentElement</td>
????????????????
<td>moveRow?5</td>
????????????????
<td>parentElement</td>
????????????
</tr>

????
</table>
????
????
</div>
????
</body>
</html>

?

?

?

?

?

?

轉載于:https://www.cnblogs.com/didi/archive/2010/03/22/1691663.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276142.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276142.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276142.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

UBUNTU 用戶及用戶組管理 修改用戶和主機名

轉載鏈接&#xff1a;http://blog.sina.com.cn/s/blog_66439a3e0101dm1g.html 一、用戶及用戶組管理 創建組&#xff1a; $sudo addgroup ccache 創建用戶&#xff1a; $sudo useradd ccache -g ccache -M 創新wfz用戶并創建HOME目錄&#xff0c;指定用戶組為ccache $sudo u…

ping -a 獲取不到主機名_網絡測試命令——PING

命令功能&#xff1a;Linux系統和windows系統的ping命令是常用的網絡命令&#xff0c;它通常用來測試與目標主機的連通性&#xff0c;這樣我們就可以根據它ping輸出的信息來確定目標主機是否可訪問(但這不是絕對的)。有些服務器為了防止通過ping探測到&#xff0c;通過防火墻設…

寫在2021: 值得關注/學習的前端框架和工具庫

前言最近在知乎看到了這么個問題&#xff1a;學完Vue還有必要學習React和Node嗎&#xff1f;[1]&#xff0c; 有很奇妙的感覺&#xff0c;因為我在最開始入門前端時&#xff0c;也是以Vue入的門&#xff0c;在“學完”Vue之后&#xff0c; 我也有了這個疑問&#xff0c;但當時的…

萬物互聯之~RPC專欄

3.RPC引入 上篇回顧&#xff1a;萬物互聯之~深入篇 Code&#xff1a;https://github.com/lotapp/BaseCode/tree/master/python/6.net/6.rpc/ 其他專欄最新篇&#xff1a;協程加強之~兼容答疑篇 | 聊聊數據庫~SQL環境篇 3.1.概念 RPC(Remote Procedure Call)&#xff1a;分布式系…

python判斷字符大小寫轉換_Python 字符串大小寫轉換的簡單實例

①所有字母都轉換為大寫# -*- coding:utf-8 -*-if __name__ "__main__":a hello, world!print(a.upper())輸出&#xff1a;HELLO, WORLD!②所有字母都轉換為小寫# -*- coding:utf-8 -*-if __name__ "__main__":a HELLO, WORLD!print(a.lower())輸出&am…

正則表達式如何匹配正反斜杠

轉載鏈接&#xff1a;http://wiki.ubuntu.org.cn/Python%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97#.E5.8F.8D.E6.96.9C.E6.9D.A0.E7.9A.84.E9.BA.BB.E7.83.A6 反斜杠的麻煩 在早期規定中&#xff0c;正則表達式用反斜杠字符 ("…

前端進階必備Node.js,你得了解一下

作為前端開發&#xff0c;工作中肯定離不開 JavaScript &#xff0c;而 Node.js 是基于 JavaScript 語言和 V8 引擎的 Web 服務器項目&#xff0c;讓你可以直接使用 JavaScript 來搭架服務器。而且在 Node 環境下&#xff0c;通過模塊化的 JavaScript 代碼&#xff0c;加上函數…

Google推出“Google實驗室” Ad Innovations

4月1日消息&#xff0c;據國外媒體報道&#xff0c;Google近日推出了Ad Innovations功能&#xff0c;類似于“Google實驗室”&#xff0c;但專門用于展示最新的廣告技術、方案等&#xff0c;并征求廣告主的反饋。 目前Ad Innovations已有數款新功能&#xff0c;Google將按照反饋…

JS中utf8和GBK的字符編碼轉換

1、PHP中的 json_encode 函數只限編碼UTF-8的數據&#xff0c;當轉換GBK或者GB2312等編碼的數據時&#xff0c;會將漢字轉為NULL。 2、JavaScript 中json 的使用&#xff1a; ① 將對象轉為json字符串&#xff1a;JSON.stringify(obj)② 將json轉為對象&#xff1a;dataObj ev…

tcptracerte參數_TCP/IP詳解學習筆記(4)-ICMP協議,ping和Traceroute【轉】

1.IMCP協議介紹前面講到了&#xff0c;IP協議并不是一個可靠的協議&#xff0c;它不保證數據被送達&#xff0c;那么&#xff0c;自然的&#xff0c;保證數據送達的工作應該由其他的模塊來完成。其中一個重要的模塊就是ICMP(網絡控制報文)協議。當傳送IP數據包發生錯誤&#xf…

[實踐系列]Promises/A+規范

前言 [實踐系列] 主要是讓我們通過實踐去加深對一些原理的理解。 實踐系列-前端路由 實踐系列-Babel原理 有興趣的同學可以關注 實踐系列 。 求star求follow~ 什么是Promise ? Promise是JS異步編程中的重要概念&#xff0c;異步抽象處理對象&#xff0c;是目前比較流行Javas…

Web Components 上手指南

現在的前端開發基本離不開 React、Vue 這兩個框架的支撐&#xff0c;而這兩個框架下面又衍生出了許多的自定義組件庫&#xff1a;Element&#xff08;Vue&#xff09;Ant Design&#xff08;React&#xff09;這些組件庫的出現&#xff0c;讓我們可以直接使用已經封裝好的組件&…

隱藏網頁文件的后綴(IIS測試通過)!

網上很多網站會看到如這樣的地址: /content?actadd&id1 /column?actedit&id2 原本是 /content.asp?actadd&id1 /column.asp?actedit&id2 這樣的效果就是在iis上做了下手腳&#xff0c;使用了rewrite重寫組件&#xff0c;就可以實現。 rewrite.rar轉載于:ht…

Linux下查看文件內容的ASCII碼以檢查內容的編碼一致

轉載鏈接&#xff1a;http://blog.csdn.net/tiantang46800/article/details/6460567 ascii查詢方式&#xff0c;查看文件以ascii顯示&#xff0c;od命令 隨著計算機飛速的發展&#xff0c;很多人開始學習Linux&#xff0c;怎樣才能學好Linux&#xff0c;一定要學好Linux的命令…

乘基取整法是什么_十進制小數轉二進制小數乘2取整法的直觀理解

乘2取整法介紹舉例&#xff1a;0.35轉換成二進制0.3520.7 取0(d1)0.721.4 取1(d2)0.420.8 取0(d3)0.821.6 取1(d4)0.621.2 取1(d5)0.220.4 取0(d6)直到滿足規定的位數為止所以(0.35)10(0.d1d2d3d4d5d6)2(0.010110)2這個方法不難掌握&#xff0c;就是有點不好理解&#xf…

如何遠程連接Windows和linux服務器

linux的方法在下面 Windows服務器遠程連接 登錄控制臺查看服務器系統是什么系統例如阿里云的ECS服務器 Windows系統可以使用微軟自帶的遠程工具進行連接&#xff0c;可以連接的系統有Windows server 和Windows 7-10 等等系列&#xff1b;Windows系統&#xff0c;例如Windows10系…

URL是什么

URL是什么意思&#xff1f; 懸賞分&#xff1a;0 - 提問時間2006-3-12 08:14我在玩QQ空間的時候&#xff0c;在添加音樂時會有一個添加URL的地方‘&#xff5e;我是想問那是什么意思&#xff1f;&#xff1f;&#xff1f;提問者&#xff1a; caoyiwang1107 - 魔法學徒 一級 其他…

手把手教你接入前端熱門抓包神器 - whistle

大家好&#xff0c;我是若川&#xff0c;今天推薦騰訊前端團隊的這篇好文。whistle 是一個基于 Node.js 的跨平臺網絡調試工具。最近隨著 Nohost 的開源&#xff0c;有不少同學問了 whistle 相關的問題&#xff0c;本篇文章將結合幾個常見的業務場景介紹如何在本地前端項目開發…

Linux命令之hexdump - ”十六“進制查看器

轉載鏈接&#xff1a;http://codingstandards.iteye.com/blog/805778 用途說明 hexdump命令一般用來查看”二進制“文件的十六進制編碼&#xff0c;但實際上它的用途不止如此&#xff0c;手冊頁上的說法是“ascii, decimal, hexadecimal, octal dump“&#xff0c;這也就是本文…

使用數據增強技術提升模型泛化能力

在《提高模型性能&#xff0c;你可以嘗試這幾招...》一文中&#xff0c;我們給出了幾種提高模型性能的方法&#xff0c;但這篇文章是在訓練數據集不變的前提下提出的優化方案。其實對于深度學習而言&#xff0c;數據量的多寡通常對模型性能的影響更大&#xff0c;所以擴充數據規…