Нажав кнопку, откройте новое текстовое поле в Ruby on Rails - PullRequest
0 голосов
/ 24 ноября 2010

У меня есть ресурсы BlogPost, где на экране «Показ» BlogPost я хочу, чтобы кнопка «Новый комментарий» отображалась, и только при нажатии этой кнопки я хочу, чтобы новый шаблон «Комментарий» отображался на той же странице.Я хотел бы использовать концепцию ajax для этого.Как мне это сделать?

ПРИМЕЧАНИЕ. У меня есть BlogPost и Comment как отдельные ресурсы (множественное число). Ресурсы, которые я определил в моих маршрутах, выглядят так:

map.resources :blog_posts, :has_many => :comments

РЕДАКТИРОВАТЬ: для лучшей идеи добавьтессылка комментария чуть ниже вопроса в stackoverflow

Ответы [ 2 ]

2 голосов
/ 24 ноября 2010

Я думаю, что все, что вам нужно сделать, это отобразить поле комментария (разметку HTML) при загрузке страницы, но дать ему правило CSS, которое будет скрыто (<div id='comment' style="display:none"> ... comment markup ... </div>). Затем добавьте ссылку чуть выше или ниже этого div, чтобы показать div и скрыть ссылку «добавить комментарий», используя js (например, jquery).

Примерно так:

<script type='text/javascript'>
function fade_some_stuff(){
   $('#comment_link').click( function(){ $('#comment').fadeIn(); $('#comment_link').fadeOut(); });
}
</script>
<a href="#" id='comment_link'>add comment</a>
<div id='comment' style="display:none;">
 ...
</div>
0 голосов
/ 24 ноября 2010

Полагаю, вам нужно что-то подобное ... http://jqueryui.com/demos/dialog/#modal-form

Пожалуйста, ознакомьтесь с документацией внизу, чтобы реализовать это в своем приложении.

Удачи!

...