我正在使用Ruby on Rails 3.1.1和jQueryUI 1.8.14。我想实现一个jQueryUI sortable list并在我的应用程序数据库中保存相关的项目位置更改。实现\ make that 我计划执行一个AJAX HTTP请求(当然,包括正确的信息\数据,以便正确地使这个有效\尽可能简单)每次用户更改项目位置。
如何在商品订单更改时执行AJAX HTTP请求?您建议考虑通过AJAX HTTP请求发送哪些数据?
答案 0 :(得分:1)
我最近使用了jqueryUI sortable jquery ui sortable doc
我使用名为'order_by'INT字段的db字段。
你需要的只是将jqueryUI sortable()应用于你想要的元素列表,然后通过ajax将序列化的新命令(检查可排序的ui选项,它有serialize或toArray {option})传递给你的控制器页面
您将新订单保存到数据库中并且已经完成了。在我的情况下,每次保存新订单时,每个'order_by'字段都会更新。
修改
$("#test-list").sortable({
cursor: 'move',
placeholder:'sortbale-highlight-holder',
tolerance:'pointer',
update: function() {
new_order = $(this).sortable("serialize");
somenthing_was_ordered = 1;
}
});
我使用的逻辑是:
用户更改订单,我在全局变量中设置新订单。 然后我使用提交输入发送ajax请求并保存新订单。
在 更新:function(){ 您可以随时启动请求,因为您可以随时将新订单返回到ajax调用,但我更喜欢为服务器请求保存一些内存:)