2011-12-10 9 views
0

私のRailsアプリケーションでは、一連の「植物」オブジェクトを選択した後、それらの植物の画像が表示され、「ドラッグ可能」にする必要があります。問題は、Rubyやdiv idを使用しようとするかどうかにかかわらず、最初に表示されるプラントだけがドラッグ可能であることです。私は間違って何が起こっているのか分かりませんし、結果として得られるHTMLページソースも動作するはずです。私は同様のQ & Aを見つけました:jQuery Draggable only allowing 1 image to be draggableしかし、解決策は私のコードでは機能しませんでした。私application.jsでjquery-UIは1つのアイテムしかドラッグ可能です

<% @plants.each do |plant| %> 
    <li>       
<%= image_tag(plant.image_path, :id => "draggable", :size => "50x50")%>  
    </li> 
<% end %> 

そしてDIVまたはLi IDを使用して同じこと:私の見解では

$(function() { 
    $("#draggable").draggable(); 
}); 

は、これが唯一の最初の画像は、 "ドラッグ可能" と表示されます:

<% @plants.each do |plant| %> 
    <li id="draggable">       
    <%= image_tag(plant.image_path, :size => "50x50")%>  
    </li> 
<% end %>  

HTMLページのソースは、各項目がドラッグのIDを持っていることを示しているが、それでも、最初のアイテム確かにドラッグ可能です。最初はdraggableがRailsの "each"関数と互換性がないと思っていましたが、最初のプラントオブジェクトのほかに、私のビュー内の他のイメージをドラッグすることはできません。私を助けてください。私はそれがバグか、JavaScriptの問題かどうかはわかりませんが、Jqueryをかなり新しくしています。

答えて

3

idは、ページごとに一意である必要があります(したがって、最初の項目のみを取ります)。要素にクラスをドラッグ可能にしてください。

+0

私はそれがあなたが言及している質問とほぼ同じ答えを見ていますが、今はその解決策を試してみたときに正確に何を試したのでしょうか。 – Johan

+0

ああ、持っています。元のQ&Aに戻って、CSSを追加したことがないことに気付きました。ありがとう、ヨハン。 –

関連する問題