#javascript #ruby-on-rails-3
#javascript #ruby-on-rails-3
Вопрос:
В Rails 3 я хочу запустить javascript, который отображает всплывающее окно после того, как пользователь нажимает на ссылку, чтобы присоединиться к группе, которая определяет, имеет ли пользователь право на присоединение (действие контроллера определяет, имеют ли они право).
Мне нужно передать идентификатор контроллеру, получить сообщение от контроллера, а затем запустить javascript с помощью сообщения.
Я не могу запустить javascript. Может кто-нибудь, пожалуйста, помочь мне понять, что я делаю не так? Я думаю, что это в ссылке в представлении.
действие контроллера:
def join
@group = Group.find(params[:id])
if ineligible
@message = "Sorry, you can't join."
elsif current_user
if !@group.already_joined(current_user)
@message = GroupUser.create(@group,current_user,nil,nil)
else
@message = "You're already registered for this group"
end
else
@message = "If you're already a user, but not a member of this group, please login, and then click the join link again. If you aren't a user yet, please join!"
end
end
javacript в заголовке
<%= javascript_include_tag "jquery" %>
<script>
$(#message).msg('<% @message %>', {
type : 'confirm'
});
</script>
Вид
<%= link_to 'Join',{:onclick => {:controller => 'groups', :action => 'join', :id => @group.id} }%>
<div id="message"></div>
Ответ №1:
Попробуйте заключить ваш #message
селектор в кавычки:
<%= javascript_include_tag "jquery" %>
<script>
$('#message').msg('<% @message %>', {
type : 'confirm'
});
</script>