繁体   English   中英

如何使用link_to_remote Rails方法在:成功之后进行:update?

How to :update after :success with link_to_remote Rails method?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

在用户单击链接后,我试图完成两件事:

  1. 删除一个div
  2. 在页面底部添加另一个元素

我玩过Rails link_to_remote,下面的代码得到的是删除div 之前添加了元素:

<%= link_to_remote "&#x2713;",
  :url => {
    :controller => :movies,
    :action => :mark_as_seen,
    :movie => movie,
    :render => 'movie' },
  :success => "Effect.Fade('movie_#{movie.id}_wrapper', { duration: 0.4 })",
  :update => "movies", :position => "bottom",
  :failure => "alert('Ooops! An error occurred.')"
%>

我试图将:update:position放在:complete回调中,但是什么也没发生。 当我将它们都放入:success回调(在Effect.Fade之后)时,我得到的只是一个解析错误。

任何想法?

谢谢,

凯文

1 个回复

我不确定我是否正确理解,但是我猜测您希望在:update动作发生之前删除div。

和往常一样,这非常简单:)

<%= link_to_remote "&#x2713;",
  :url => {
    :controller => :movies,
    :action => :mark_as_seen,
    :movie => movie,
    :render => 'movie' },
  :before => "Effect.Fade('movie_#{movie.id}_wrapper', { duration: 0.4 })",
  :update => "movies", :position => "bottom",
  :failure => "alert('Ooops! An error occurred.')"
%>

因此,只需将:success替换为:success :before 希望这能满足您的需求:)

解释很简单:完成动作成功结束后,便执行:success动作,更新也将执行。 :before操作在远程操作执行之前执行。 例如,我一直在远程操作期间一直使用此按钮来显示微调器。

2 Rails /不干扰Javascript-link_to_remote:update

在浏览了很多东西之后,我浏览了很多关于该主题的文章,但是我真的很困惑,因为这个问题似乎主要是在一段时间后(当发生更改时)得到解决的,并且很少与今天的情况相匹配。 因此,我试图将Rails 2.1应用程序更新为3.2-并遇到了已弃用的link_to_remote函数。 我意识到它已被lin ...

7 rails中的link_to_remote问题

我在rails中使用link_to_remote时遇到了一致性问题。 我有2个link_to_remote用例,它们生成不同的ajax。 我无法弄清楚为什么,这让我发疯。 这是用例一...... 这会生成适当的ajax(如下所示)并按预期工作。 请注意,它从调用中获取:a ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM