小编Sai*_*ard的帖子

用于Rails 3数据确认属性的jQuery UI Dialog而不是alert()

在Rails 3中,将:confirm参数传递给link_to将填充链接的data-confirm属性.这将在单击链接时引发JS alert().

我正在使用rails jQuery UJS适配器(https://github.com/rails/jquery-ujs).rails.js的相关代码是:

$('body').delegate('a[data-confirm], button[data-confirm], input[data-confirm]', 'click.rails', function () {
    var el = $(this);
    if (el.triggerAndReturn('confirm')) {
        if (!confirm(el.attr('data-confirm'))) {
            return false;
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

triggerAndReturn: function (name, data) {
        var event = new $.Event(name);
        this.trigger(event, data);

        return event.result !== false;
    }
Run Code Online (Sandbox Code Playgroud)

我想知道如何修改它以产生一个jQuery对话框(例如jQuery UI对话框),允许用户确认或取消.

我对JavaScript的了解不足以实现这一目标.我目前的方法是简单地重写$('body').delegate()函数来实例化灯箱.但是我想,有一种比这更有效的方法.

javascript jquery ruby-on-rails unobtrusive-javascript

13
推荐指数
2
解决办法
1万
查看次数