使用jQuery的addClass不工作

时间:2014-07-16 17:28:30

标签: javascript jquery

我正在更改表格中2行的数据位置。箭头向上和向下箭头图像的类没有正确设置。

如果position为1,那么它应该只是一个向下箭头。同样,如果position是最后一个,那么只有向上箭头应该可用。在任何其他情况下,两个箭头都应该是可见的。

这是我试过的JavaScript:

function sortTable( tablename )
{
    var count = $("#" + tablename + " tr").length;
    $("#" + tablename + " tr").each(function()
    {
        var that = $(this);
        if (that.data("position") == 1)
        {
            $(this)
                .find("img.rowUp")
                .addClass("imgDisplayNone" );
        }
        else if (that.data("position") == count)
        {
            $(this)
                .find("img.rowDown")
                .addClass("imgDisplayNone" );
            console.log("positon == anzahl" + that.data("position") + " anzahl " + count);
        }
        else if(that.data("position")>1 && that.data("position")< count)
        {
            $(this)
                .find("img.rowUp")
                .removeClass("imgDisplayNone" );
        }
    });

}

我认为问题是源代码和DOM操作之间的区别,但我不确定如何修复它。

我已经读过我需要jQuery&#39; .index,但我不知道如何实现它。

感谢您的帮助。

这是展示我问题的Fiddle

1 个答案:

答案 0 :(得分:4)

你可以用CSS做到这一点:

tr:first-child img.rowUp { display: none }
tr:last-child img.rowDown { display: none }

http://jsfiddle.net/Q6Q8T/