gpt4 book ai didi

jquery - 标准删除链接不适用于 Rails + JQuery UJS

转载 作者:行者123 更新时间:2023-12-01 02:16:30 24 4
gpt4 key购买 nike

我正在使用 JQuery 1.4.4 和 jQuery UJS Rails.js 制作 Ruby On Rails 3.0.3 应用程序 ( https://github.com/rails/jquery-ujs )

我有脚手架生成的模型/ View / Controller - 文档,其中 app/views/documents/index.html.haml 文件中有删除链接:

link_to "delete", document, :confirm => "Are you sure?", :method => :delete

这会生成以下 HTML:

<a href="/documents/1" data-confirm="Are you sure?" data-method="delete" rel="nofollow">Destroy</a>

这看起来很不错。

当我点击这个“销毁”链接时,我会看到浏览器confirm(),而当我点击取消时,我预计不会发生任何事情。

但是

删除功能发生并且文档被删除。

有人有同样的问题或者我做错了什么吗?

目前我已经挖掘到这里了:

我查看了jquery-ujs Rails.js 并且有两个 .live() 事件附加到同一个 anchor :

1) $('a[data-confirm],input[data-confirm]').live('click', function () {...}

2) $('a[data-method]:not([data-remote])').live('click', function (e){...}

首先 live() 执行返回 false; 据我所知应该会中断所有执行链,但事实并非如此。第二个 live() 仍然执行,第二个 live() 是生成表单并提交销毁操作的地方。

最佳答案

升级到最新的rails.js(适用于jQuery)可以解决问题。

https://github.com/rails/jquery-ujs/raw/master/src/rails.js

关于jquery - 标准删除链接不适用于 Rails + JQuery UJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4453401/

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