2009-09-10 2 views
0

Я использую jQuery для вызова ajax для моего контроллера, и все работает отлично, за исключением того, что я не могу получить возвращаемое значение, которое я хочу.рендеринга частичных элементов как html в rails

Скажем, у меня есть коллекция предметов, и у меня есть частичный:

/app/views/messages/_message.html.erb 

Я пытаюсь сделать это как большая строку текста/HTML, как так:

format.js { render_to_string :partial => "message", :collection => @messages} 

Однако это визуализация какого-то вида, потому что я получаю и теги. Даже если я изменю его на:

format.js { render_to_string :partial => "message", :collection => @messages, :layout => 'none'} 

он все еще возвращает то же самое. Это возможно? Мне нужно вернуть его для jQuery, чтобы обработать его, поэтому я не уверен, что это можно сделать с помощью rjs. Любая помощь приветствуется.

ответ

2

Вы пробовали использовать рендер вместо render_to_string?

Кроме того, тот факт, что вы используете JQuery делает это немного более сложным, если вы использовали прототип вы могли бы использовать RJS и сделать что-то вроде

page.replace_html('container_element', :partial => @messages) 
+0

Я не хочу, чтобы заменить HTML из контейнер, я хочу добавить к нему. Я могу использовать page.replace_html благодаря плагину jrails –

+0

Тогда вы бы использовали: page.insert_html: bottom,: partial => @messages – jonnii