jQuery实现调整表格单列顺序完整实例

本文实例讲述了jQuery实现调整表格单列顺序的方法。分享给大家供大家参考,具体如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"

"http://www.w3.org/TR/html4/strict.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<title>调整表格顺序</title>

<script type = "text/javascript" src="jquery-1.7.2.js"></script>

<style type = "text/css">

#main{

width:800px;

height:400px;

margin:auto;

text-align:center;

border:1px solid red;

background:#eee;

padding-top:100px;

}

#tabf{

height:170px;

position:relative;

}

#showDetail{

left:244px;

width:20px;

height:15px;

line-height:15px;

border-left:1px solid blue;

border-top:1px solid blue;

border-right:1px solid blue;

cursor:pointer;

display:none;

position:absolute;

}

#tab{

margin-top:16px;

border-collapse:collapse;

position:absolute;

}

#tab td{

height:50px;

width:50px;

line-height:50px;

border:1px solid blue;

}

#sortTab{

width:170px;

height:155px;

border:3px outset;

background:#ccc;

position:absolute;

top:15px;

left:270px;

display:none;

}

#tdList{

width:90px;

height:150px;

border:1px inset;

position:absolute;

}

#opt{

width:80px;

height:150px;

position:absolute;

left:90px;

}

.btn{

margin:10px;

width:60px;

height:20px;

}

</style>

<script type = "text/javascript">

$(function(){

index = 0;

cols = new Array();

show_Hide_tipBtn();//显示或隐藏表格设置面板

showResult(); //文档加载完毕时,先将表格中的数据显示到面板中

$(".up").click(function(){

sortColumn(cols,index,"tab","up")

showResult()

$(".sortTd").each(function(m){

if(m==index){

$(this).css("background-color","red");

}else{

$(this).css("background-color","")

}

})

})

$(".down").click(function(){

sortColumn(cols,index,"tab","down")

showResult()

$(".sortTd").each(function(m){

if(m==index){

$(this).css("background-color","red");

}else{

$(this).css("background-color","")

}

})

})

})

function getResult(cols){

var result = "";

cols.each(function(n){

result += "<span style = 'margin-top:10px;border:1px solid;display:block' id='"+n+"' class='sortTd'>"+$(this).text()+"</span>";

})

return result;

}

function showResult(){ //将表格中各列的第一行显示到面板中

cols.length = 0;

$("#tab tr:first td").each(function(i){

var col = $("#tab tr td::nth-child("+(i+1)+")") //将每一列分别存入数组cols中

cols.push(col);

$("#tdList").html(getResult($(cols))); //添加到面板

$(".sortTd").click(function(){

$(".sortTd").css("background-color","")

$(this).css("background-color","red");

index = parseInt($(this).attr("id"));

})

})

}

function show_Hide_tipBtn(){

$("#tab").mouseover(function(){ //鼠标移入到表格上时,显示弹出按钮

$("#showDetail").css("display","block");

}).mouseout(function(){ //鼠标移入到表格上时,隐藏弹出按钮

$("#showDetail").css("display","none");

})

$("#showDetail").mouseover(function(){ //鼠标移入到弹出按钮上时,显示弹出按钮

$(this).css("display","block");

}).mouseout(function(){ //鼠标移入到弹出按钮上时,隐藏弹出按钮

$(this).css("display","none");

})

$("#showDetail").click(function(){

$("#sortTab").slideToggle("slow");

})

}

function sortColumn(col, t, faId, dir){

if (((t == 0) && (dir == "up")) || ((t == col.length-1) && (dir == "down"))) {

return false;

}

else {

var k = t;

var idx = 0;

if (dir == "up") {

idx = k - 1;

}

else

if (dir == "down") {

idx = k + 1;

}

var temp = null;

temp = col[idx];

col[idx] = col[k];

col[k] = temp;

$("#" + faId + " tr").each(function(){

$(this).remove();

})

var trs = col[0].length;

for (var j = 0; j < trs; j++) {

var tr = $("<tr></tr>")

$(col).each(function(){

tr.append($($(this)[j]));

})

$("#" + faId).append(tr);

}

index = idx;

//return col;

}

}

</script>

</head>

<body>

<div id = "main">

<div id = "tabf">

<div id = "showDetail">></div>

<table id = "tab">

<tr>

<td>a</td><td>b</td><td>c</td><td>d</td><td>e</td>

</tr>

<tr>

<td></td><td></td><td></td><td></td><td></td>

</tr>

<tr>

<td></td><td></td><td></td><td></td><td></td>

</tr>

</table>

<div id = "sortTab">

<div id = "tdList"></div>

<div id = "opt">

<input type = "button" value = "UP" class = "btn up"/><br/>

<input type = "button" value = "DOWN" class = "btn down"/><br/>

</div>

</div>

</div>

</div>

</body>

</html>

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇总》、《jQuery常用插件及用法总结》、《jquery中Ajax用法总结》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

以上是 jQuery实现调整表格单列顺序完整实例 的全部内容, 来源链接: utcz.com/z/314672.html

回到顶部