【发布时间】:2017-07-13 16:44:30
【问题描述】:
我有一个表格,我可以在其中单击标题以按不同的列对整个表格进行排序。 我想合并一些布尔状态,以便我可以单击一次以按该列升序对表格进行排序,然后再次单击使其降序。
这是我的代码:
<th><A HREF="thispage.cfm?sorter=creationDate">Creation Date</A> </th>
<cfif IsDefined("URL.sorter")>
<cfquery datasource="Pad" name="One">
select * from meeting
ORDER BY #URL.sorter# DESC
</cfquery>
<cfelse>
<cfquery datasource="Pad" name="One">
select * from meeting
ORDER BY contactName
</cfquery>
</cfif>
我相信它可以通过使用 cfset 创建一个布尔变量然后在单击表头时更改该变量状态并在第一个查询中将一个变量状态分配给 ASC 并将另一个变量状态分配给 DESC 来实现。我只是不确定如何实现它。
【问题讨论】:
-
我认为您最好使用 javascript 或 jquery 来执行此操作。其实看看cfgrid。它可能已经具有此功能。我不确定,因为我从不使用它。
-
ORDER BY #URL.sorter#这是一个sql注入风险。在直接在 sql 查询中使用之前,始终验证任何用户提供的输入。
标签: mysql coldfusion html-table click