"Delete" %> 这在 HTML 中看-6ren">
gpt4 book ai didi

jquery - 安装 JQuery 时,为什么我的 "delete"链接断开?

转载 作者:行者123 更新时间:2023-12-01 00:59:20 24 4
gpt4 key购买 nike

我有一个可以创建和删除产品的 Rails 3 应用程序。索引页列出了所有产品。列表中每个产品旁边都有一个删除链接:

<%= link_to "Delete", product, :method => :delete, :title => "Delete" %>

这在 HTML 中看起来像这样:

<a href="/products/104" data-method="delete" rel="nofollow" title="Delete">Delete</a>

这一直运行良好。

我已经达到了想要在我的应用程序中安装 JQuery 的程度。我按照多个网页上提供的步骤进行操作(例如 thisthis,)。

安装 JQuery 后,上面的“删除”链接断开。 Rails 尝试处理 show 操作,而不是处理 ProductsController 中的 destroy 操作!

我的猜测是,这与 Web 浏览器本身无法发送 DELETE 请求有关,因此 Rails 使用 JavaScript“伪造”此类请求,这就是为什么我有以下内容尝试安装 JQuery 之前的行:

<%= javascript_include_tag :defaults %>

编辑:JQuery 安装过程中一定发生了某些事情,使得用于“伪造”DELETE 请求的 Javascript 不再起作用,导致 show 操作被执行叫。但具体发生了什么我不知道......

大家有什么想法吗?谢谢。

最佳答案

仔细检查 JavaScript 文件的包含顺序。具体来说,jQuery 必须在 jQuery Rails 驱动程序之前加载(请参阅 http://github.com/BinaryMuse/rails-book/blob/master/app/views/layouts/application.html.haml#L6-L7 中的以下行):

<%= javascript_include_tag "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" %>
<%= javascript_include_tag "rails" %>

(假设您使用 http://github.com/rails/jquery-ujs/blob/master/src/rails.js 中的 jQuery 驱动程序替换了 rails.js 中的内容)。

关于jquery - 安装 JQuery 时,为什么我的 "delete"链接断开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3640702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com