首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在创建手动ajax请求时使用jquery-rails (ujs)

在创建手动ajax请求时使用jquery-rails (ujs)
EN

Stack Overflow用户
提问于 2012-09-30 14:28:56
回答 1查看 480关注 0票数 1

我为笔记列表实现了jQuery的draggable/droppable,以便对它们进行分层排序,目前它工作得很好,但我觉得我做得太多了。

整个csrf部分是随请求一起手动发送的,我也在手动评估响应,这是ujs提供的功能。有没有一种方法可以无缝地集成它,这样我就可以使用ujs库的优点了?

我想到的一种可能的解决方案是将整个可拖动组件包装到一个<form data-remote="true">中,但这感觉有点老套。

代码语言:javascript
复制
$(function()
{   
    $('#notes-container .note').draggable();

    $('#notes-container .note').droppable({
        drop: function(event, ui)
        {
            $.ajax({
                type: 'PUT',
                url: ui.draggable.find('form').attr('action'),
                data: { 
                    authenticity_token: $('meta[name="csrf-token"]').attr('content'),

                    task: { 
                        parent_id: $(this).data('id') 
                    } 
                }
            });
        }
    });

});
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-03 15:45:51

解决方法是将我需要的整个表单添加到元素中,然后让draggable/droppable回调填充表单所需的值,并触发.submit(),然后由jquery-rails处理。

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

https://stackoverflow.com/questions/12659189

复制
相关文章

相似问题

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