3

我有一个控制器,其动作被远程击中,之后我的controller_action.js.erb文件运行。

在我的控制器的操作中,我设置了一个变量@successful = true|false(true|false 基于函数的返回值)。

在我的 javascript 文件中,我想说if @successful并提醒操作成功或提醒操作不成功。

知道怎么做吗?

4

2 回答 2

2

尝试这个

<%- if @successful %>
   alert('Blabla');
<%- else %>
   alert('Blabal');
<%- end %>
于 2012-07-10T18:47:19.370 回答
1

我通常说 HAML,所以这可能不完全正确:

if(<%= @successful %>) {
  // do stuff
} else {
  // do other stuff
}

在 HAML 中,它将是:

:javascript
  if(#{@successful}) {
    // do stuff
  } else {
    // do other stuff
  }

或者,您可以这样做:

(再培训局)

<%- if @successful %>
  // JS code if true
<%- else %>
  // JS code if false
<%- end %>

(哈姆勒)

- if @successful
  :javascript
    // JS code if true
- else
  :javascript
    // JS code if false

第一个选项将始终在客户端呈现所有 JS 代码,唯一的区别是 iftruefalseis 在if子句中。

第二个选项将有条件地仅呈现真假情况的 JS 代码。

于 2012-07-10T18:40:30.733 回答