C# 使用jquery sortable管理数据库中列表的顺序?

C# 使用jquery sortable管理数据库中列表的顺序?,c#,.net-4.0,jquery-ui-sortable,C#,.net 4.0,Jquery Ui Sortable,我有一张电影表和一张演员表,由c#内置的简单CMS管理。用户需要在电影页面的列表中调整演员的顺序。我认为jQuerySortable将为此提供一个非常好的UI,我可以在gridview上很好地实现它。代码如下: <script type="text/javascript"> $(function () { $('table').filter(function () { return $('tr', this).length > 2

我有一张电影表和一张演员表,由c#内置的简单CMS管理。用户需要在电影页面的列表中调整演员的顺序。我认为jQuerySortable将为此提供一个非常好的UI,我可以在gridview上很好地实现它。代码如下:

<script type="text/javascript">
    $(function () {
        $('table').filter(function () {
            return $('tr', this).length > 2;
        })
        .sortable({
            items: 'tr:not(:first)',
            axis: 'y',
            scroll: true               
        }).disableSelection();
    });
</script>
第二个片段只是为了证明我能读懂新的职位,但对我需要做的事情没有用处

actors表中有包含actorID、movieID和order相关字段的行。在UI中重新排序参与者时,我需要将新的顺序值写回数据库。这就是我质疑的最好的方法

1) 对于管理数据库中的数据,可排序小部件首先是合理的选择吗

2) 如果是这样的话,用什么聪明的方法写回udpated值?性能并不重要,因为最多只有少数几个用户,但列表中可能有近100个条目,尽管随时可能只有一两个条目会被重新排序。

1)我有一个页面,在这个页面中,我可以使用jQuery表拖放插件执行类似的操作。用户通过拖动各行对表进行排序,然后保存该顺序(在PDF报告等中使用)。如果用户界面符合您的目的,那么使用sortable来实现这一点是完全合理的。:)

2) 最直接的方法是,每当您更改某个对象的排序顺序时,遍历整个列表并构建一个ID和顺序的数组(甚至只是顺序中的ID)。然后使用jQuery ajax()命令将该数组发送回服务器

在服务器上,您有一个控制器操作,该操作需要一个int数组(或您要传回的任何数组)。然后可以将该订单保存到服务器。这部分只是标准的服务器代码,所以非常简单

我会给你一些示例代码,但不幸的是,我现在没有时间(不过,使用jQuery进行ajax调用非常容易,而且有很多示例:)

1)我有一个页面,在这个页面中,我可以使用jQuery表拖放插件执行类似的操作。用户通过拖动各行对表进行排序,然后保存该顺序(在PDF报告等中使用)。如果用户界面符合您的目的,那么使用sortable来实现这一点是完全合理的。:)

2) 最直接的方法是,每当您更改某个对象的排序顺序时,遍历整个列表并构建一个ID和顺序的数组(甚至只是顺序中的ID)。然后使用jQuery ajax()命令将该数组发送回服务器

在服务器上,您有一个控制器操作,该操作需要一个int数组(或您要传回的任何数组)。然后可以将该订单保存到服务器。这部分只是标准的服务器代码,所以非常简单


我会给你一些示例代码,但不幸的是,我现在没有时间(不过,使用jQuery进行ajax调用非常容易,而且有很多示例:)

这听起来很好。我可以处理服务器端代码,但如果您能告诉我如何在javascript中构建ID数组并将其发送回,那就太完美了。这听起来很好。我可以处理服务器端代码,但如果您能告诉我如何在javascript中构建ID数组并将其发送回,那就太完美了。
    stop: function (event, ui) {
        alert("New position: " + ui.item.index());
        var x1 = ui.item.index();
    }