Я рендеринг двух шаблонов GSP в контроллере. Первый шаблон отображается следующим образом:
String couponspage = (g.render(template: "availableCoupons", contentType:"text/html", model : [:]))?.toString()
Я включаю результаты первого шаблона в модель для вызова второго шаблона следующим образом:
render(template: "itemOffer", model: [merchantOffers: merchantOffers, asinnumbers: params.asinnumbers, linkshare : couponspage])
Во втором шаблоне GSP я использую jQuery для обновления содержимого элемента с использованием визуализированного шаблона, содержащегося в модели, следующим образом:
$("#elementid").html("${linkshare}")
Все работает, если в рендеринг-шаблоне все элементы html находятся в одной строке. К сожалению, в моем шаблоне GSP, как и во многих других HTML-документах, есть вкладки и символы новой строки, чтобы сделать файл читаемым людьми. g.render включает в себя эти управляющие символы, которые, кажется, заставляют все ломаться. Простой файл с Hello World, содержащийся в элементе абзаца, который содержится в элементе div, не работает.
"\ n \ t
Hello World
\ n"
(Извините, вы не видите абзац и элементы div в приведенном выше примере.) Документация предполагает, что то, что я делаю, прямо и должно работать без проблем. Я не могу поверить, что должен убрать управляющие символы из отображаемой строки или сделать I. Удаление вызова jQuery и добавление «$ {linkshare}» непосредственно в конец второго шаблона также работает. Что дает?
Спасибо