我已閱讀關於此主題的其他線索,但它們似乎不適用於我,因此,如果我只是對這個主題感到頭疼,我會事先道歉。在Javascript調用中嵌入Ruby代碼
我有一個Rails視圖,它顯示一個700x200大圖像(我們稱之爲幻燈片)。在這張大圖片下,我有幾張縮略圖顯示。當我點擊縮略圖時,我想讓縮略圖的大圖像出現在縮略圖上方的大圖像中。
我使用Rails 3.2和PaperClip作爲圖像。
我的視圖代碼:
<div id="slider">
<%= image_tag @first_image.image.url(:full) %>
</div>
<% @slides.each do |s| %>
<div id="slider_tn">
<ul>
<li><%= s.id %> <%= image_tag s.image.url(:thumb), {:onclick =>"$('#slider').html("+image_tag.url(:full)+")"} %></li>
<li>Title: <%= s.title %></li>
<li>URL: <%= s.url %></li>
<li><%= link_to("Edit", action: "edit", id: s.id) %></li>
</ul>
</div>
<% end %>
裏面的:的onclick部分就是我在遇到麻煩。我得到一個「錯誤數量的參數(0 1..2)我嘗試紅寶石添加標籤:
<%= s.id %> <%= image_tag s.image.url(:thumb), {:onclick =>"$('#slider').html("+<%= image_tag.url(:full) %>+")"} %>
...但是這讓我的錯誤:意外‘<’,我的理解 我試圖將image_tag.url(:full)分配給javascript var,如其他帖子所示,並使用它,但這對我也不起作用。得到這個工作。
非常感謝您的任何幫助/提示
Hallucynogenyc:謝謝。我試過了:{:onclick =>「$('#slider')。html(#{image_tag.url(:full)})」}和{:onclick =>「$('#slider')。html (「+#{image_tag.url(:full)})+」},但都不起作用。你能更具體一些嗎?謝謝, –
我沒有測試過我的代碼,但它應該可以工作。一個標籤內的標籤,這就是爲什麼你得到意想不到的'<'。如果你需要在一個字符串中嵌入紅寶石代碼,使用插值。 – bluehallu