首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据方法否定了旧jquery-rails上的数据确认

数据方法否定了旧jquery-rails上的数据确认
EN

Stack Overflow用户
提问于 2015-10-10 20:26:59
回答 1查看 96关注 0票数 0

我正在支持一个运行Rails 3.2的老站点,jquery 1.7,带有自定义的jquery-rails ( gemfile说它是0.2.6 -但在公共文件夹中有一个自定义的,所以它可能已经更新了)

我有一个delete链接(data-method= delete )和一个确认(data-confirm=“你确定要删除这个吗?”)。但是,即使我单击确认框上的取消,该项目也会被删除。我猜这是最近才开始发生的。你知道为什么会发生这种情况以及如何修复它吗?

EN

回答 1

Stack Overflow用户

发布于 2015-10-10 20:26:59

因此,我设法通过使用以下代码修改jquery.rails.js来修复此问题:

代码语言:javascript
复制
/**
 *  confirmation handler
 */
$('a[data-confirm],input[data-confirm]').live('click', function (event) {
    var el = $(this);
    if (el.triggerAndReturn('confirm')) {
        if (!confirm(el.attr('data-confirm'))) {
            event.preventDefault();
            $(event.currentTarget).data('failed-confirm', true);
            return false;
        }
        ...

这样,如果用户单击cancel,它就会在我可以测试的链接上设置数据。然后,在数据方法处理程序的开头:

代码语言:javascript
复制
    $('a[data-method]:not([data-remote])').live('click', function (e){
        if($(e.currentTarget).data('failed-confirm')) {
            $(e.currentTarget).data('failed-confirm', false);
            return false;
        }
        ...

这似乎是有效的,但我仍然很好奇到底发生了什么变化……

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33053973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档