我使用名为var的url传递参数,其中包含值'event'。我想在rjs文件中检查这个变量并加载一个模态对话框。以下是我的代码。
page<<" if (:var== "event") {"
page<< "$j ('#create_evnt_dialog').dialog({
title: 'New Trainer',
modal: true,
width: 500,
close: function(event, ui) { $j ('#create_evnt_dialog').dialog('destroy') }
});"
page << '}else{'
page.replace_html 'create_evnt', :partial => 'add_events'
page << "}"
我无法检查rjs文件中的变量事件。我可以这样做吗?
这是我的Ajax链接::
<%= link_to_remote 'Add new event', :url => {:controller => 'events', :action => 'new' }, :with=>"'var=' + escape('event')" %>
<%= link_to_remote 'Add new holidays', :url => {:controller => 'events', :action => 'new' }, :with=>"'var=' + escape('holy')" %>
这是我的控制器代码::
def new
@event = Event.new
@trainers= Trainer.all
@countries= Country.all
@venues= Venue.all
@var=params[:var]
if(@var == 'holy')
@event.trainer_id='0'#If we save holiday as event we put 0 to trainer and venue
@event.venue_id='0'
end
end
答案 0 :(得分:4)
你可以使用
if params[:template] == "viewer"
render :action => "viewer_destroy.js.rjs"
else
render :action => "destroy.js.rjs"
end
答案 1 :(得分:0)
我认为你必须使用像这样的ruby语法:
if (<%= :var %> == "event") {
或所有在ruby
<% if :var == "event" %>
<% end %>