使用jquery更改链接方法以删除,但仍然获得发布请求

时间:2012-12-10 13:03:38

标签: jquery ruby-on-rails

我有非常简单的ajax投票计数器+/-来添加/删除投票。

<div class="points pull-left">
  <a rel="nofollow" data-remote="true" data-method="post" href="/entry_votes?id=135">+</a>
  <span id="entry135">2</span>
</div>

当我点击+时,它会为entry_votes视图运行js,更改范围值(在本例中为3),将+更改为-data-method更改为{{ 1}}并添加delete

适用于以下代码:

create.js

class="unvote"

destroy.js

$("#entry<%=@entry.id%>").html("<%=@entry.points_count%>")
$("#entry<%=@entry.id%>").siblings().replaceWith('<%= link_to "-",entry_vote_path(id: @entry.id),method: :delete, remote: true, class: "unvote"%>')

我不想替换,但两者都只是切换$("#entry<%=@entry.id%>").html("<%=@entry.points_count%>"); $("#entry<%=@entry.id%>").siblings().replaceWith('<%=link_to "+",entry_votes_path(id: @entry.id),method: :post,remote: true %>'); ,+ / - 和class =“”/“unvoted”,所以我写了这样的东西:

create.js

data-method

当我第一次点击它时它工作正常,改变就像我想要的那样。例如,$("#entry<%=@entry.id%>").html("<%=@entry.points_count%>") $("#entry<%=@entry.id%>").siblings().attr("data-method","delete").addClass("unvote").html("-") 更改为+2,现在当我点击-3时,即使-更改为删除,它仍会运行create操作。知道为什么吗?

0 个答案:

没有答案