列表项实现上下移动


本文分享解决一个对一组列表项点击上下移动修改其排序位置的问题。
欢迎讨论和吐槽。

问题描述

  • 这个问题其实很简单,实现的方式也不止一种,这里主要分享我实现的方法;
  • 问题是有一列选项,按一定顺序显示,可以通过上下移动修改其显示顺序;
  • 顺便说一句,曾经有一次面试,面试官问我的就是这个问题,当时并没有回答出来。 = =

    问题解决

    这里我当时的考虑是加一个字段order用来排序,觉得上移就减少这个order值,下移就增加这个值,按照这个思考就有点复杂;
    还是根据这个思路,后来的实现是在移动过滤中,交换应该和它交换的项的order值,就可以实现排序,参考下方:
    order1
    B  order2
    C  order3
    
    C上移:
    A  order1
    B  order3
    C  order2
    
    这样根据order排序显示就可以达到显示目的。

总结

  • 这个问题不难,关键要实现的巧妙,单独添加字段用来排序,不影响原有功能。
  • 继续思考其他方案

文章作者: Xudong Jiang
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Xudong Jiang !
 上一篇
最大子序列和问题求解 最大子序列和问题求解
本系列主要整理分享对一些数据结构和算法问题的总结和思考,供基础相对较差的人渐进地学习,也是自身复习和寻求提升的过程。(代码部分借鉴和取自数据结构和算法书籍)本文主要分享对最大子序列求和问题的求解和思考。欢迎讨论和吐槽。 问题描述 给定整数A
下一篇 
记录一次nginx-server返回502的问题排查 记录一次nginx-server返回502的问题排查
本文记录一次自己在配置nginx+php-fpm时候遇到的问题,访问nginx server一直返回502。欢迎讨论和吐槽。 问题原因 这个问题对我来说是由于粗心造成,不过大家以后可能会遇到,我这边分享出来。 当时我在自己的php.ini中
2016-01-17
  目录