我已经看过很多使用一个模型进行jQuery排序的例子,但我还没有找到任何对两个模型有用的东西。随着那说......
我有两种型号:文件夹和文件夹。任务。
以下是有效的:我可以对文件夹中包含的任务进行排序。
以下是我想要的内容:能够将任务从一个文件夹拖放到另一个文件夹,同时正确排序新文件夹中的任务(即,如果在任务#1和任务之间拖动) #3,然后新任务将被排序为任务#2)。任何人都可以提供如何执行此操作的帮助吗?
这是我到目前为止所做的:
文件夹/ index.html.erb ....
<ul id="folder">
<% @folders.each_with_index do |folder, i| %>
<li id="folder_<%= folder.id %>"> <%= folder.name %> </li>
<% if !folder.tasks.blank? %>
<ul id="task">
<% folder.tasks.each do |task| %>
<li id="task_<%= task.id %>"><%= task.name %></li>
<% end %>
</ul>
<% end %>
<% end %>
</ul>
<script type="text/javascript">
// Sorting the list
$(document).ready(function(){
$(function() {
$('#task').sortable(
{
opacity: 0.6,
cursor: 'move',
connectWith: '#folder',
receive: function(event, ui) {
$.ajax({
type: 'put',
data: {folder_id : '#{folder.id}' },
dataType: 'script',
complete: function(request){
$('#task').effect('highlight');
}, url: '/tasks/change_folder'
})
},
update: function(){
$.ajax({
type: 'post',
data: $('#task').sortable('serialize') ,
dataType: 'script',
complete: function(request){
$('#task').effect('highlight');
},
url: '/tasks/sort'
})
}
});
});
});