我在 Rails 4 上使用 ruby 和 jquery-ui-rails gem。有些列表具有可排序的 jquery 功能。
$ ->
$('#projects').sortable
handle: '.handle'
opacity: 0.4
update: ->
$.post($(this).data('update-url'), $(this).sortable('serialize'))
这是我的代码,未应用制表符缩进。
问题:
列表实际上在第一个连接项目页面上工作,我将列表连接到显示页面, 然后我单击返回链接。无法排序
发生了什么?
最佳答案
看来您已启用涡轮链接。在这里阅读有关它们的信息:github/rails/turbolinks .
问题是,当您通过单击更改页面时,turbolinks 仅通过 ajax 加载新页面并更新当前页面。无需重新加载任何 css 和 js。因此 $ ->
在首次加载后将不起作用。
此问题有两种解决方案:
首先,使用 document.addEventListener "page:load", ->
而不是 $ ->
。
或者第二,从 Gemfile
中删除 Turbolinks gem,并从 application.js
中删除其 require
。
关于javascript - Rails 4 与 CoffeeScript,不需要的 jquery 可排序分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19608165/