[英]Sort A HTML Table In Descending Order
I have a HTML table which reads data from my DB but the enteries in the DB are not in order, how do i order my 'Stock' column so that they are in alphibetical order (AZ) 我有一个HTML表,该表从我的数据库中读取数据,但是数据库中的输入项不按顺序排列,我该如何对“库存”列进行排序,以使它们按字母顺序(AZ)
My HTML for my table is below 我表格的HTML如下
<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>
Can this be done in JavaScript, JQuery, HTML, i'm not sure whats the best way to this hence my question 能用JavaScript,JQuery,HTML做到吗,我不确定什么是最好的方法,所以我的问题是
PS I dont want to have to change the table to a webgrid
or datatable
. PS我不希望有表更改为
webgrid
或datatable
。
好的,实际上您需要做的是在查询末尾order by Stockname DESC
添加order by Stockname DESC
。
Why are you not simply write it in DB Query? 为什么不简单地在DB Query中编写它呢?
I mean something like this: 我的意思是这样的:
"SELECT * FROM <table> WHERE <sequence> ORDER BY <parameter to order> ASC"
you need to add Order clause when you are fetching data from database
从数据库中获取数据时需要添加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
2 ways i can think of: 我能想到的2种方式:
As there are many answers suggest order this at server-side(Me too), if you insist to sort it by javascript/ jquery: 由于有很多答案,建议您在服务器端(我也是)订购此产品,如果您坚持按javascript / jquery对其进行排序:
array
array
Name
column's text. Name
列的文本排序。 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>
我建议您在select语句中使用“ order by columnName desc”,因为表数据的排序会影响代码的性能
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.