jquery – 如何发送回js.haml在rails

前端之家收集整理的这篇文章主要介绍了jquery – 如何发送回js.haml在rails前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个rails创建动作,发送回一些文件中的jquery:

create.js.erb

var appearance = $("<%= escape_javascript(render(:partial => @appearance)) %>").effect("highlight",{color: '#E6ff00'},2000);
$("#sortable").append(appearance);
$("#new_appearance")[0].reset();

我已经开始使用HAML,想知道我应该如何转换。我可以用js.haml吗?
如果是这样,标记应该是什么样子?

解决方法

实际上,在HAML中返回JS非常简单,只需使用:plain filter,并在#{}中包含您想要评估的任何内容
:plain
  var appearance = $("#{escape_javascript(render(:partial => @appearance)}").effect("highlight",2000);
  $("#sortable").append(appearance);
  $("#new_appearance")[0].reset();

不要使用:javascript过滤器,因为它会将不必要的标签中的所有内容都包含在内。

如果你需要使用一些逻辑,只需把:plain里面的嵌套。

- if params[:printing]
  :plain
    $('#print-view').html("#{escape_javascript(render 'print_preview')}");

对不起ERB。

猜你在找的jQuery相关文章