博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net Repeater拖拽实现排序并同步排序字段到数据库中
阅读量:7026 次
发布时间:2019-06-28

本文共 2749 字,大约阅读时间需要 9 分钟。

      数据库表中有一个单位表,里面包括ID、Name、Order等字段,现在有个后台管理功能,可以设置这些单位在某些统计表格中的先后显示顺序,于是想到用拖拽方式实现,这样操作起来更简便。

     使用了GifCam软件做了一个示例动画,效果如下图所示:

                              

      于是就动手起来,发现jquery.ui中提供sortable函数,可用于排序,界面中从数据库绑定的单位使用Repeater控件,下面简单介绍下主要步骤:

1、项目中使用到的jquery-1.7.2.min.jsjquery-ui.min.js请点击进行下载,地址为:

2、TestDemo.aspx代码如下:

    
Repeater拖拽排序

<%#Eval("F_DataCenterName").ToString() %>

<%#Eval("F_Order") %>

TestDemo.cs代码如下,具体数据库操作类获取数据根据各自的情况进行,这里就不详细介绍了。

public partial class TestDemo : System.Web.UI.Page    {        public static GGJ_DC_DataCenterBaseInfoBLL bll = new GGJ_DC_DataCenterBaseInfoBLL();        protected void Page_Load(object sender, EventArgs e)        {            if (!IsPostBack)            {                BindData();            }        }        ///         /// 绑定部委单位        ///         public void BindData()        {            string where = "";            string orderby = "F_Order ASC";            DataTable dt = bll.GetData(where, orderby);            this.rpt.DataSource = dt;            this.rpt.DataBind();        }    }

3、$.ajax方法请求的页面update.aspx及update.aspx.cs代码如下:

public partial class update : System.Web.UI.Page    {        public static GGJ_DC_DataCenterBaseInfoBLL bll = new GGJ_DC_DataCenterBaseInfoBLL();        protected void Page_Load(object sender, EventArgs e)        {            if (!IsPostBack)            {                string order = Request["order"].ToString();                string depId = Request["id"].ToString();                UpdateOrder(depId, order);            }        }        ///         /// 重新更新顺序        ///         ///         ///         public void UpdateOrder(string deptId, string order)        {            string[] deptIds = deptId.Split(',');            string[] orders = order.Split(',');            for (int i = 0; i < deptIds.Length; i++)            {                for (int j = 0; j < orders.Length; j++)                {                    if (i == j)                    {                        string sql = "update GGJ_DC_DataCenterBaseInfo set F_Order=" + orders[j] + " where F_DataCenterID='" + deptIds[i]+ "'";                        DataTable dt = CommonClass.QuerySQL.GetDataTable(sql);                        if (dt.Rows.Count > 0)                        {                         }                    }                }            }        }    }

===========================================================================

如果觉得对您有帮助,微信扫一扫支持一下:

你可能感兴趣的文章
主流虚拟化技术介绍、选购
查看>>
“chaos”的算法---之哈希表(HASH)算法详解
查看>>
Citrix XenDesktop
查看>>
HP服务器Linux下hpacucli常用命令
查看>>
Virtualization Now!>VMware View>正文 虚拟桌面几个常见问题?
查看>>
查看Entity Framework生成的SQL语句
查看>>
【Android进阶学习】监听EditText的变化
查看>>
如何修改LINUX的TTL值
查看>>
UML用例图之泛化(generalization)、扩展(extend)和包含(include)关系
查看>>
Linux as 5 下部署oracle 10.2.0.1(5)(
查看>>
Hadoop (HDFS)分布式文件系统基本操作
查看>>
Outlook自动答复设置
查看>>
我的第一个Scrapy 程序 - 爬取当当网信息
查看>>
【UNITY3D 游戏开发之四】有关实现2D帧序列帧播放相关—Animating Tiledtexture
查看>>
关于SQLServer2005的学习笔记——异常捕获及处理
查看>>
启动Eclipse 弹出“Failed to load the JNI shared library”错误的解决方法
查看>>
Android 的消息机制(1)
查看>>
磁盘清理无法删除DUMP文件手工删
查看>>
译著《Fedora和Red Hat Enterprise Linux实用指南(第6版)》即将上市,敬请关注!
查看>>
Java线程:创建与启动
查看>>