【发布时间】:2011-11-03 03:31:12
【问题描述】:
我正在尝试在我的咖啡脚本代码中应用“刷新”触发器,但我没有找到正确的语法:
在标准 jquery 中,它将是:$('.milestone_chain').sortable('refresh')
如果知道这是我的代码,coffeescript 会是什么:
$('.milestone_chain').sortable
axis: 'y'
containment: 'parent'
cursor: 'move'
tolerance: 'pointer'
update: (event,ui)->
$('li > a > div > span.number').each (i, element) =>
$(element).html i+1
$.ajax($(this).attr('data-update-url') + '/' + ui.item.attr('id') + '/reorder/' + (ui.item.index() + '.js'))
html 如下:
<ul class="milestone_chain" data-update-url="projectmilestones">
<% projectcapstone.projectmilestones.rank(:rank).includes(:projectdepartment).each.with_index do |projectmilestone, i| %>
<li class="milestone_<%=projectmilestone.projectdepartment.ranking%>" id="<%=projectmilestone.id%>">
<div class="chainpie"><%= percent_pie(projectmilestone.status)%></div>
<div class="milestone<%=projectmilestone.projectdepartment.ranking%>"><%= link_to content_tag(:span, i+1, :class => "number"), projects_projectmilestone_path(projectmilestone) %></div>
<div class="milestonenum">
<%= link_to projectmilestone.name, projects_projectmilestone_path(projectmilestone) %>
<b class="notch"></b>
</div>
</li>
<% end %>
</ul>
它运行良好。问题是代码有时需要在 Ajax 中加载,然后它就不再工作了。这就是我要实现刷新方法的原因。如果我理解正确,它解决了这个问题
谢谢!
【问题讨论】:
-
您的问题到底是什么?当我将您的代码应用到咖啡编译器时,我得到了我期望的 Javascript……
sortable下方的所有内容都是具有您指定选项的对象。什么不工作? -
我的问题是在Ajax中加载html时它不起作用。我更新了帖子以提供有关代码的更多信息。
标签: jquery refresh coffeescript jquery-ui-sortable