从Sql Server获取拖动/保存的项目状态

时间:2011-01-11 16:18:18

标签: asp.net sql ajax jquery-ui

好的,我看到很多关于如何序列化拖动项目的值以获取哈希的帖子,并告诉他们如何保存它们。现在的问题是,当用户登录时,如何使用我获得的has值,如何持久保存被拖动的项目 例如:

  <ul class="list">
        <li id="id_1">
            <div class="item ui-corner-all ui-widget ui-widget-content">
            </div>
        </li>
        <li id="id_2">
            <div class="item ui-corner-all ui-widget ui-widget-content">
            </div>
        </li>
        <li id="id_3">
            <div class="item ui-corner-all ui-widget ui-widget-content">
            </div>
        </li>
        <li id="id_4">
            <div class="item ui-corner-all ui-widget">
            </div>
        </li>
    </ul>
序列化中的

将给出

"id[]=1&id[]=2&id[]=3&id[]=4"

现在认为我在一个名为SortOrder的字段中将其保存到Sql server数据库中。  现在如何再次获取这些订单的商品? 下面是进行这些排序的代码,没有这些代码,人们就不知道我用来排序和序列化的库

 <script type="text/javascript">
    $(document).ready(function() {
        $(".list li").css("cursor", "move");
        $(".list").sortable();
    });
</script>

2 个答案:

答案 0 :(得分:0)

您可以存储带有数据的SortOrder列,而不是存储单个字段吗?您可以使用新的排序顺序更新数据库,并在从数据库查询数据时,按排序顺序对其进行排序。否则,在代码中,您必须对数据进行编程排序,将数据查询到某些内容,然后循环并将数据复制到另一个基于此字段排序的数组/列表。

HTH。

答案 1 :(得分:0)

我相信Brian所说的是,如果用户按照升序排序,您的表格应如下所示:

ID排序顺序
1 1
2 2
3 3
4 4

如果用户按降序排序,则表格如下所示:

ID排序顺序
1 4
2 3
3 2
4 1

然后,当您查询数据库时,您将执行

SELECT [ID], [Sort Order]
FROM [thetable]
ORDER BY [Sort Order]

,列表将由服务器排序。

然后,您可以按照服务器代码提供的顺序输出数据。