ajax的排序问题

这是我通过读取数据库循环出的表单

clipboard.png

现在我想通过单击 姓名 性别 名族 来排序,这个用ajax的的方式应该怎么写呢?

阅读 6.9k
11 个回答

如果是数据条数特别多的话,强烈建议你使用dataTables插件,这个插件对于表格展示数据来说是相当完善的。像排序这个问题都是小问题了。

你一個項目做那麼就而且那麼多問題,是實習麼。這個是畢業設計.....
1.ajax獲取排序的數據,最起碼要多兩個字段,一個是需要排序的字段,一個desc還是asc
2.由於一開始沒有設置排序所以需要默認排序,一般id desc。
3.避免傳過來的排序參數出現問題而導致系統級別查詢錯誤,必須驗證參數,驗證表是否存在該字段,或是否設置該字段排序。使用三元运算符去設置排序是從小到大還是大到小

前端對每個thead 的th綁定個click事件,而且th要有兩個屬性,這屬性字段和排序方式

ajax只是请求后端数据,把你想要的排序方式以参数传给后端,然后 后端查询并返回数据展示就好了.

这个不关ajax的事,排序结果是后台生成的。

可以ajax提交字段名+排序方式到后台,后台就输出排好序的json,再更新到dom里边。

前台也可以通过遍历当前表格来对当前表格排序。

dataTables 这个插件可以做到,可以去官网看看实例,操作也挺方便的,功能很强大

一种方案是使用vue、react这种 mvvm 框架,另一种就是通过调不同的接口在服务端排序后返回客户端。推荐第一种方案

本地排序,你就用算法比较下获取的数据就行了,参考:https://segmentfault.com/a/11... 后半部。
不然就像Datatables,那样,给指令,后台拿数据就行了。
不过,我猜,你应该是想客户端排序。 PS:Datatables这插件,用过,API有点多,用来实现你的功能,感觉大材小用,花的时间可能更多。Datatables有一个中文站点,不过介绍不是特详细。

感觉不带分页的话,直接用 js 的 .sort() 就可以了,每次点完删掉表格重新生成一遍。想效率高点的,找一个 html 模板库更好,例如 doT.js。

首先确定有没有分页,如果有分页,排序和你没关系,是后台做的,如果是前端排序,那么用 sort() 方法吧。

我也来扯两句,最笨的方法就是,直接从后端拿过来的数据,在页面上实现局部刷新即可。当然楼上说的都对,考虑的是多^~^^~^

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏