无法从Rails控制器呈现JavaScript

Her*_* D. 6 ruby-on-rails rjs

我想显示一个带有错误消息的模态窗口,当用户在表单中输入了无效内容时,如果一切正常,则显示另一个操作.但是,当我尝试显示模态窗口时

render :js => "jQuery.facebox(#{...})"
Run Code Online (Sandbox Code Playgroud)

仅显示实际调用的JavaScript:

try {
  jQuery.facebox(...)
} catch (e) { alert('RJS error:\n\n' + e.toString());
  alert('jQuery.facebox(\"<div class=\'error\'>Error</div>\")');
  throw e;
}
Run Code Online (Sandbox Code Playgroud)

Sch*_*ems 7

您是否尝试过将代码部分放入?而不是

render :js => "jQuery.facebox(#{...})"
Run Code Online (Sandbox Code Playgroud)

尝试

render :partial => "my_facebox_popup" 
Run Code Online (Sandbox Code Playgroud)

然后在你的_my_facebox_popup.html.erb局部放入你的代码:

<script type = "text/javascript">
...
</script>
Run Code Online (Sandbox Code Playgroud)

调试使用firebug获得的任何错误.


Sal*_*lil 1

尝试这个

 render :update do|page|
   page <<  "jQuery.facebox(#{...})"
 end
Run Code Online (Sandbox Code Playgroud)