按降序排序HTML表

时间:2015-07-16 09:07:01

标签: javascript jquery html

我有一个HTML表格,它从我的数据库中读取数据,但数据库中的输入不是有序的,我如何订购我的“库存”列,以便它们符合alphibetical顺序(A-Z)

我的桌面的HTML位于

之下
var groupedList = from l in ListbrandList
    group l by l into grp
    select new { key = grp.Key, cnt = grp.Count()};

这可以用JavaScript,JQuery,HTML完成,我不知道最好的方法是什么,因此我的问题

P.S。我不想将表格更改为 <table class="table table-striped"> <tr> <th style="padding-right: 10px;">Stock</th> <th style="width: 7%; padding-right: 10px;">SEDOL</th> <th style="width: 7%; padding-right: 10px;">Quantity</th> <th style="width: 7%; padding-right: 10px;">Value</th> <th style="width: 15%;" class="text-center">Actions</th> </tr> <% foreach (var stck in stocks) {%> <tr> <td style="vertical-align: middle"><%: stck.StockName%></td> <td style="vertical-align: middle"><%: stck.SEDOL%></td> <td style="vertical-align: middle"><%: stck.Quantity%></td> <td class="text-right" style="vertical-align: middle"><%: String.Format("{0:c}", stck.value)%></td> <td class="text-right"> <%if (disinvestments.Find(x => x.Stock == stck.StockName) != null) {%> <button type="button" class="btn btn-default" disabled id="create_<%: stck.StockName%>" onclick="SetupDisinvestmentsFields(this,'<%=stck.SEDOL%>','<%=stck.Quantity%>','<%=stck.value%>')"> <span class="glyphicon glyphicon-plus"></span> Create </button> <%} else {%> <button type="button" class="btn btn-default" id="create_<%: stck.StockName%>" onclick="SetupDisinvestmentsFields(this,'<%=stck.SEDOL%>','<%=stck.Quantity%>','<%=stck.value%>')"> <span class="glyphicon glyphicon-plus"></span> Create </button> <%} %> </td> </tr> <% } %> </table> webgrid

6 个答案:

答案 0 :(得分:2)

好的,您需要做的是在查询结束时添加order by Stockname DESC

答案 1 :(得分:1)

为什么不简单地在DB Query中编写它?

我的意思是这样的:

"SELECT * FROM <table> WHERE <sequence> ORDER BY <parameter to order> ASC"

答案 2 :(得分:0)

  

从数据库中提取数据时需要添加Order子句

select * from Table_Name order by Column_Name asc   // for accending order

select * from Table_Name order by Column_Name  desc   // for decending order

答案 3 :(得分:0)

我能想到的两种方式:

  • 收集您订购的数据(ORDER BY - DES中的DESC或ASC)
  • 使用可以为您执行此操作的表插件。 Datatables插件适用于我。

答案 4 :(得分:0)

因为有很多答案建议在服务器端订购这个(我也是),如果你坚持按javascript / jquery排序:

  1. 获取除第一行以外的所有行,作为标题行。
  2. 从表中删除,并转换为array
  3. 按其Name列的文字排序。
  4. 追加回到表格。
  5. var rows = $('table tr:not(:first)').detach().toArray();
    rows.sort(function(rowA, rowB) {
        var textA = $(rowA).find('td:first').text();
        var textB = $(rowB).find('td:first').text();
        console.log(textA, textB);
        return textA < textB ? -1 : 1;
    });
    
    $('table').append(rows);
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
    <table class="table table-striped">
          <tr>
              <th style="padding-right: 10px;">Stock</th>
              <th style="width: 7%; padding-right: 10px;">SEDOL</th>
              <th style="width: 7%; padding-right: 10px;">Quantity</th>
              <th style="width: 7%; padding-right: 10px;">Value</th>
         </tr>
          <tr>
              <td style="vertical-align: middle">CCC</td>
              <td style="vertical-align: middle">5</td>
              <td style="vertical-align: middle">6</td>
              <td class="text-right" style="vertical-align: middle">3</td>
        </tr>
         <tr>
              <td style="vertical-align: middle">AAA</td>
              <td style="vertical-align: middle">1</td>
              <td style="vertical-align: middle">2</td>
              <td class="text-right" style="vertical-align: middle">3</td>
        </tr>
          <tr>
              <td style="vertical-align: middle">BBB</td>
              <td style="vertical-align: middle">3</td>
              <td style="vertical-align: middle">4</td>
              <td class="text-right" style="vertical-align: middle">3</td>
        </tr>
         <tr>
              <td style="vertical-align: middle">ABC</td>
              <td style="vertical-align: middle">1</td>
              <td style="vertical-align: middle">2</td>
              <td class="text-right" style="vertical-align: middle">3</td>
        </tr>
    </table>

答案 5 :(得分:0)

我建议您使用&#34; order by columnName desc&#34;在你的select语句中,由于表数据的排序会影响代码的性能