Привет, я начал использовать Ruby on Rails всего неделю назад и все еще довольно новичок, поэтому, если кто-нибудь сможет помочь мне решить эту проблему, я бы очень признателен, это личный проект, m работает над не школьной работой. Поэтому проблема заключается в том, что я пытаюсь щелкнуть одно из изображений аниме из моей jcarousel на моей странице html и отобразить его описание в отдельном div (id = content) в теге p, используя вспомогательные методы, перечисленные ниже, но его не работает должным образом он всегда показывает, что последнее описание аниме из моей базы данных может кому-нибудь помочь?Ruby On Rails с использованием вспомогательных методов в link_to
Мой помощник Методы
module HomepageHelper
attr_accessor :info
def getDescription(des)
@info = des
end
def setDescription()
content_tag(:p, @info)
end
end
Мой HTML страница
<!DOCTYPE html>
<html>
<head>,
<%= stylesheet_link_tag "application", media:"all", "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
<%= javascript_include_tag "http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"%>
<title>Anime Shuffle</title>
</head>
<body>
<%= yield %>
<div class="container">
<div class="header">
<h1>Anime Shuffle</h1>
<ul id="navigator">
<li><a href="home.html">Home</a></li>
<li><a href="video.html">Videos</a></li>
<li><a href="about.html">List</a></li>
</ul>
</div>
<div class="ContentSearch">
<ul id="search">
<li><input type="text" name="query" value="Search"></input></a></li>
<li><a href="home.html">Popular</a></li>
<li><a href="videos.html">New</a></li>
<li><a href="anime_list.html">Shuffle</a></li>
</ul>
</div>
<div class='jcarousel'>
<ul id='carousel_ul'>
<% @animes.each do |anime| %>
<li>
<%= link_to image_tag(anime.img_src,:data => {:description => anime.aname, :title => anime.aname}),'getDescription(anime.description)' %>
<figcaption>
<%= anime.aname %>
</figcaption>
</li>
<% end %>
</ul>
<div id="left1" class="left" data-jcarouselcontrol="true"><div class="arrow-left"> </div>
</div>
<div id="right1"class="right" data-jcarouselcontrol="true"><div class="arrow-right"></div>
</div>
</div>
<div class="content">
<div id="Rating">
<p>0.0</p>
<div id="episode-title">
<p>Episode List</p>
</div>
<div id= "episodes-list">
<li><p>Episode<p>1<p>-<p>Upload Date</p></p></p></li>
</div>
</div>
<div id ="info">
<p>Synposis</p>
<div id = "info-content">
<p><%= setDescription %></p>
<div id="tags">
<li><p>Tags: <p>something, somthing, something, something</p></p></li>
</div>
</div>
</div>
<div id="Review">
<p>Review</p>
<div id= "Review-content">
<p>Ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis suscipit laboriosam, nisi ut?</p>
</div>
</div>
</div>
</div>
</div>
<div class="footer">
<div id='footer-container'>
<p>Powered by Net</p>
</div>
<div>
</body>
Javascript
var id = "";
setInterval(function() {
var left1 = parseInt($('#carousel_ul').css('left'));
if ($('#left1').is(":hover")) {
$('#carousel_ul').css('left', left1+1.5);
if(left1> 150)
{
$('#carousel_ul li:last').insertBefore($('#carousel_ul li:first'))
$('#carousel_ul').css('left', 0);
}
}
else if ($('#right1').is(":hover")) {
$('#carousel_ul').css('left', left1-1.5);
if(left1 < -150)
{
$('#carousel_ul li:first').insertAfter($('#carousel_ul li:last'))
$('#carousel_ul').css('left', 0);
}
}
},10);
$(document).ready(function() {
setInterval();
});
Попробуйте написать Javascript для ссылки 'onclick' и вызвать метод' setdescription' для каждой ссылки динамически – Gowri
в вашей link_to кажется, что вы вызываете getDescription (anime.description) внутри кавычек. Это действительно называется? Думаю, вы не должны использовать кавычки! –
Я возился с ним, пытаясь разными вещами, он не работает – mav191