У меня есть скрипт в файле html.erb.Добавить динамический сгенерированный Ruby идентификатор в функцию Javascript
Чтобы вырезать Короче говоря у меня есть эта строка в скрипте
$('img:gt(0)').hide();
Я хочу, чтобы добавить динамический идентификатор к селектору IMG. Динамический идентификатор
<%= hrct.id %>
Я попытался
var imgVar = <%= hrct.id %>;
$('#img_+ imgVar img:gt(0)').hide();
Ничего хорошего.
И
var imgVar = <%= hrct.id %>;
$('#img_+ (imgVar) img:gt(0)').hide();
Ничего хорошего.
Помощь?
EDIT: я сейчас попробовал
$(function(){
var imgVar = <%= hrct.id %>;
$('#img_'+ imgVar +' img:gt(0)').hide(); // to hide all but the first image when page loads
var img = $('#<%= hrct.id %>').children(), l = img.length;
$('#Up, #Down').on('click', function() {
var i = img.index(img.filter(':visible').hide());
var t = this.id === 'Up' ? ++i : --i;
img.eq(t === l ? 0 : t).show();
});
});
Я включил полную функцию. Если вы посмотрите на инструменты разработчика вы получаете
вместо
$('#img_3 img:gt(0)').hide();
В самом деле,
$('#img_<%= hrct.id %> img:gt(0)').hide();
дает
$('#img_3 img:gt(0)').hide();
Но тыс е функция не работает, как это должно
Привет, вы пробовали '$ ('# img _' + imgVar + 'img: gt (0)'). Hide();'? –
Это привело к $ ('# img _' + imgVar + 'img: gt (0)'). Hide(); при просмотре в html. Другими словами, imgVar не преобразуется в переменную, но спасибо за предложение – GhostRider
Что значит «не преобразовано в переменную»? –