Следует отметить, что я не очень хорошо разбираюсь в использовании Firebug, но я не нашел ошибок, которые объясняют следующую проблему.Устранение неполадок с ошибками js в Rails?
У меня есть feed.js.erb
файл, содержащий следующий код:
var $foos = $('<%= escape_javascript(render(@foos)) %>');
$('#container').append($foos);
$('#pagination_button a').attr('href', '<%= feed_path + '?page=' + @page %>');
Когда Аякса вызов сделан второй раз, это, кажется, не в состоянии тихо. Я вижу соответствующий ответ в консоли Firebug, но $foos
не изменен, а затем #container
никогда не добавляется.
На моей странице html имеется только индикатор загрузки, который он успешно заменяет при первом вызове. Второй вызов запускается из другого javascript (Infinite Scroll).
Если это имеет значение, я заметил, что первый вызов выполняется с автоматически созданным параметром timestamp. После этого я заменяю целевой URL, как вы можете видеть на моем #pagination_button a
.
Как отладить это в браузере?
Update: Я использовал Еврорадио, чтобы сделать $foos
динамической переменной ($ foos1 ... $ foos2) и заметил, что это тоже не работает. Таким образом, хотя новые @foos
видны в ответе консоли, первая строка моего javascript не оценивается.
Как насчет размещения точки останова на одной из этих строк с помощью панели сценариев firebug? – Jords
Я не могу найти способ сделать это, потому что этот скрипт находится внутри ответа HTTP. Он динамически создается моим контроллером Rails после того, как страница html уже отображается. –
Вы не пытаетесь добавить в контейнер дважды с тем же идентификатором элемента, не так ли? – aroth