2015-04-10 2 views
0

Следующий фрагмент кода работает так, как должен, когда я использую его как html-файл, но как только я хочу использовать его как частичное для представления в приложении rails она больше не работает :(jQuery sortable() не работает в rails

<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js" type="text/javascript"></script> 
    <script> 
    $(document).ready(function(){ 
    $('#sortable-list').sortable({ 
     axis: "y" 
    }); 
}); 
</script> 
</head> 
<body> 
    <ul id="sortable-list"> 
    <li id="order_option_1">testWordA</li> 
    <li id="order_option_2">testWordB</li> 
    <li id="order_option_3">testWordC</li> 
    <li id="order_option_4">testWordD</li> 
    </ul> 
    <br /> 
</body> 

Я пытался использовать простые методы JQuery как hide(), который прекрасно работает в моем приложении. Я использую Rails 3.2.16 и Руби 1.9.3. возможно ли, что некоторые настройки в моем приложении блокирует метод sortable()? Любая помощь с оценкой!

+0

Любые ошибки в консоли? Загружается ли частичное представление динамически? – epascarello

+0

Консоль говорит, что частичная визуализация, дает мне код состояния «200» и не показывает никаких ошибок. Частично загружается внутри формы. Я не знаю, считается ли это динамически (не могли бы вы сказать мне, когда что-то считается статически и динамически загружено?). Может ли это (быть частью формы) иметь какое-то отношение к отказу метода sortable()? – KKrenz

ответ

0

Я переключился с jQuery на Rubaxa и следующий код также работает в частичном:

<ul id="sortable-list"> 
    <li id="order_option_1">testWordA</li> 
    <li id="order_option_2">testWordB</li> 
    <li id="order_option_3">testWordC</li> 
    <li id="order_option_4">testWordD</li> 
</ul> 
<br /> 
<script src="/scripts/Sortable.js"></script> 
<script src="/scripts/Sortable.min.js"></script> 
<script> 
    var sortable_list = document.getElementById('sortable-list'); 
    var sortable = Sortable.create(sortable_list); 
</script> 
Смежные вопросы