如图,jQuery实现点击表头能够对对应的列排序,第一次为降序,第二次为升序,如此循环往复

如图,jQuery实现点击表头能够对对应的列排序,第一次为降序,第二次为升序,如此循环往复,第1张

<!DOCTYPE HTML>

<html>

<head>

<meta charset="UTF-8" />

<title>Sort Table</title>

<style type="text/css">

table {

margin: 0 auto;

border: 1px solid black;

border-collapse: collapse;

}

td {

border: 1px solid black;

}

</style>

<script type="text/javascript">

windowonload = function ()

    {

    var table = documentgetElementById ('table');

    var tbody = tabletBodies[0];

    var rows = tbodyrows;

    var cells = rows[0]cells;

    for ( var j = 0; j < cellslength; j++)

    {

     cells[j]onclick = function ()

    {

    var asc = thisasc = !!thisasc  -thisasc : -1;

    var array = [];

    arrayindex = thiscellIndex;

    for ( var i = 1; i < rowslength; i++)

    {

    arraypush (rows[i]);

    }

    arraysort (function (a, b)

    {

    var n1 = acells[arrayindex]firstChildnodeValue;

    var n2 = bcells[arrayindex]firstChildnodeValue;

    if (n1 > n2)

    {

    return asc;

    }

    else if (n1 < n2)

    {

    return -asc;

    }

    else

    {

    return 0;

    }

    });

    

    for ( var i = 0; i < arraylength; i++)

    {

     tbodyappendChild (array[i]);

    }

    }

    }

    }

</script>

</head>

<body style="text-align: center;">

<table id="table">

<tr>

<td>编号</td>

<td>姓名</td>

</tr>

<tr>

<td>1</td>

<td>李勇</td>

</tr>

<tr>

<td>2</td>

<td>王博</td>

</tr>

<tr>

<td>3</td>

<td>刘海</td>

</tr>

<tr>

<td>4</td>

<td>陈锋</td>

</tr>

</table>

</body>

</html>

我实在不知道你是什么意思,大概写了下

<script>

$(document)ready(function

(){

$("input:checkbox")each(function

(){

$(this)click(function

(){

if

(

$(this)attr('checked')

){

$('tr')eq(parseInt($(this)val()))hide();

}else{

$('tr')eq(parseInt($(this)val()))show();

}

});

});

});

</script>

<input

type="checkbox"

value="0"/>

<input

type="checkbox"

value="1"/>

<input

type="checkbox"

value="2"/>

<table

width="200"

border="1">

<tr>

<td>1</td>

<td> </td>

<td> </td>

</tr>

<tr>

<td>2</td>

<td> </td>

<td> </td>

</tr>

<tr>

<td>3</td>

<td> </td>

<td> </td>

</tr>

</table>

说实在的,复制了你的 JS代码,但是达不到你上的效果,没法帮你调试,看看是不是一下的情况:

其实两个都成功了,但是因为遮挡的原因所以只出现一个

if(winTop>tTop){

if(tH-winTop>theadH){

$thisfind('thead')css({'position':'absolute','top':winTop})

这一块本来想调试一下的,我觉的是不是因为给tableA赋值了top,所以在tH-winTop>theadH判断的时候是不是要减去这个top呢

for(j=0;j<tdWlength;j++){

$thisfind('thead')find('tr')eq(0)find('td')eq(i)width(tdW[j]);

}说实在的没看懂什么意思 =_=!!

唉,可能最后也觉得是废话,实在不行就火狐debug一下,或者是直接d出参数来验证是不是达到预期i效果

希望有所帮助吧,虽然本人也觉得用处不大@_@!!

以上就是关于如图,jQuery实现点击表头能够对对应的列排序,第一次为降序,第二次为升序,如此循环往复全部的内容,包括:如图,jQuery实现点击表头能够对对应的列排序,第一次为降序,第二次为升序,如此循环往复、JQuery 获取表格对象、有关js,jquery表头浮动问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9379330.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存