У меня есть приложение Rails, в котором я создал контроллер AJAX / JSON для выполнения некоторых динамических обновлений HTML в представлении. Я следовал этому руководству: https://www.rubyguides.com/2019/03/rails-ajax/
Я выполняю вызов, подобный этому: ../related.json?vendor_id=1&budget_id=1
, и он возвращает необработанный фрагмент HTML, который я хочу обновить (просто набор или строки таблицы).
Мой вызов выглядит следующим образом:
Rails.ajax({
url: url,
type: 'GET',
success: function(data) {
document.getElementById("related").innerHTML = "data"
// alert(data)
}
})
Если я вручную просматриваю запрос JSON в браузере, вывод HTML будет таким, как ожидалось. Однако, когда я пытаюсь заменить HTML или даже просмотреть данные в тестовом предупреждении, я получаю обратно [object HTMLDocument]
. Руководство, которым я следовал, использовало data.html
для подачи innerHTML, но это не работает для меня. Не уверен, что это проблема UJS / JQuery.
Как установить этот элемент DOM с необработанным текстом из вызова JSON?