dataTables jquery - 如何添加排序图像/图标?

时间:2013-06-21 11:43:54

标签: javascript jquery sorting jquery-datatables

我使用dataTables jquery。我想将排序图像添加到列中,并且图像shd也会在排序时更改。也就是说,如果图像显示降序图标,则单击它时应更改为升序图标。如何使用dataTables jquery完成它?

我的代码:

$("#rates").dataTable({
         "bPaginate": false,
         "sScrollY":  "250px",
         "bAutoWidth": false,
         "bScrollCollapse": true,
         "fnInitComplete": function() {
                this.css("visibility", "visible");},
                "bLengthChange": false
    });

3 个答案:

答案 0 :(得分:6)

$(document).ready(function() {
  $("#tblVal").dataTable({
    "bPaginate": false,
    "sScrollY": "250px",
    "bAutoWidth": false,
    "bScrollCollapse": true,
    "fnInitComplete": function() {
      this.css("visibility", "visible");
    },
    "bLengthChange": false
  });
});
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title>new document</title>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <script src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
  <link href="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css" rel="stylesheet" />
</head>

<body>
  <div id="foo">
    <table id="tblVal" class="data display datatable">
      <thead>
        <tr>
          <th>s.no</th>
          <th>ID</th>
          <th>Name</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td>1</td>
          <td>100</td>
          <td>vsa</td>
        </tr>
        <tr>
          <td>2</td>
          <td>101</td>
          <td>asa</td>
        </tr>
        <tr>
          <td>3</td>
          <td>102</td>
          <td>nfsa</td>
        </tr>
      </tbody>
    </table>
  </div>
</body>

</html>

确保您添加了正确的js和css文件。试试这个代码它对我有用

<!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> new document </title>
 <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
  <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
  <link rel="stylesheet" type="text/css" href="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css">
 <script type="text/javascript">
    $(document).ready(function(){
        $("#tblVal").dataTable({
            "bPaginate": false,
         "sScrollY":  "250px",
         "bAutoWidth": false,
         "bScrollCollapse": true,
         "fnInitComplete": function() {
                this.css("visibility", "visible");},
                "bLengthChange": false
    });
    });
 </script>
 </head>
 <body>
<div id="foo">
    <table id="tblVal" class="data display datatable">
        <thead>
            <tr>
                <th>s.no</th>
                <th>ID</th>
                <th>Name</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td>1</td>
                <td>100</td>
                <td>vsa</td>
            </tr>
            <tr>
            <td>2</td>
            <td>101</td>
            <td>asa</td>
            </tr>
            <tr>
            <td>3</td>
            <td>102</td>
            <td>nfsa</td>
            </tr>
        </tbody>
    </table>
</div>
 </body>
</html>

答案 1 :(得分:3)

在项目中包含images文件夹后,调整CSS中的链接以指向图像。在CSS中查找以下代码:

table.dataTable thead .sorting {
  background-image: url("../images/sort_both.png");
}

答案 2 :(得分:0)

默认情况下,数据表启用排序。 您无法更改数据表中排序图标的颜色,因为它们是不是图标,它们是 PNG图片。 您需要覆盖这些CSS属性。 (数据表1.10)

  • 升序
table.dataTable thead .sorting_asc {
    background-image: url("/YourImageFolder/sort_asc.png")
}
  • 降序
table.dataTable thead .sorting_desc {
    background-image: url("/YourImageFolder/sort_desc.png")
}
  • 均已禁用
table.dataTable thead .sorting {
    background-image: url("/YourImageFolder/sort_both.png")
}

  • 升序禁用
table.dataTable thead .sorting_asc_disabled {
    background-image: url("/YourImageFolder/sort_asc_disabled.png")
}
  • 禁用后降
table.dataTable thead .sorting_desc_disabled {
    background-image: url("/YourImageFolder/sort_desc_disabled.png")
}