我有从我的图片中提取的代码,并在div中包含每个唯一 id
和制服 class
<% @albums.at(3)["photos"]["data"].each do |data| %>
<div id="<%= data["id"] %>" class="myImages" data-toggle="modal" data-target="#myModal">
<%= image_tag data["images"].first["source"] %>
</div>
<% end %>
在这里,我的块正在从Facebook Graph API中拉出来,但基本上它给了我image_tag的网址
在同一个索引页面上我有这个模态:
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
...
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" class="btn btn-primary">Submit</button>
</div>
</div>
</div>
</div>
在我的控制器中,我有:
def index
respond_to do |format|
format.html
format.js
end
end
现在,我想通过点击其中一个图片来替换模态的内容,就像这样jsfiddle
我一直在使用这样的jquery:
视图/图像/ select.js.erb
$(".myImages").click(function (e){
e.preventDefault();
$(".modal-body").html($(this).html());
});
});
我不明白是当我将此jquery代码添加到select.js.erb
时,该函数在我的图像索引页面上不起作用。我留下了一个“...”的模态体,没有被图像取代。
然而当我将其添加到 index.html.erb
时<script>
//the same jquery code
</script>
它完全像我需要它。
我想把我所有的jquery都放在另一个文件中。我错过了一些特定于rails的东西,这些东西不允许我重构(我认为这是正确的词)我的jquery就像我解释的那样?