Rails:* .js.erb中的渲染不执行

时间:2012-11-18 11:46:21

标签: ruby-on-rails-3

我在js.erb文件中有这段代码

$("<%=j render(:partial => "phone/phone_fields" , :phone => @phone ,:token => tokenizer, :exists => false) %>").hide().appendTo('.contacts').slideDown();

调用它的控制器传递@phone变量,而tokenizer是一个帮助器。如果我将tokenizer和@phone作为警告消息,它可以工作,但是当我在render语句中使用它时,它什么都不做。它根本不执行。它甚至没有出错或什么......

我尝试了很多变体,比如在控制器中调用js render语句,结果传递给js文件但仍然无法正常工作。但我想知道为什么它在我的一个助手中起作用。

1 个答案:

答案 0 :(得分:0)

从“js.erb”文件渲染部分时尝试此操作:

<%= escape_javascript(render(:partial => "phone/phone_fields",
:phone => @phone ,:token => tokenizer, :exists => false)) %>