Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Meteor-用于拖放数据更改的软件包_Javascript_Jquery_Meteor - Fatal编程技术网

Javascript Meteor-用于拖放数据更改的软件包

Javascript Meteor-用于拖放数据更改的软件包,javascript,jquery,meteor,Javascript,Jquery,Meteor,我有一个三列的布局,里面装满了卡片,我想这样做,如果用户将卡片从第1列拖到第2列,那么该卡片的数据库中名为“status”的字段将从“1”切换到“2”。拖回第1列会将卡片“状态”字段更改回“1”。有没有一个软件包或最佳实践可以用Meteor解决这个问题?您可以用jQuery UI非常简单地做到这一点。我们在为《流星行动》一书制作冰箱时正是采用了这一原则: 您需要的是将每个卡定义为可拖放的,将列定义为可拖放的容器。然后,只需为每列创建一个类似的块(假设将每列放置在其自己的模板中): 为了让它正常工

我有一个三列的布局,里面装满了卡片,我想这样做,如果用户将卡片从第1列拖到第2列,那么该卡片的数据库中名为“status”的字段将从“1”切换到“2”。拖回第1列会将卡片“状态”字段更改回“1”。有没有一个软件包或最佳实践可以用Meteor解决这个问题?

您可以用jQuery UI非常简单地做到这一点。我们在为《流星行动》一书制作冰箱时正是采用了这一原则:

您需要的是将每个卡定义为可拖放的,将列定义为可拖放的容器。然后,只需为每列创建一个类似的块(假设将每列放置在其自己的模板中):

为了让它正常工作,您需要jqueryui。然后,每个列都需要是一个支持可拖放卡(需要可拖放)的容器。每列都有一个ID(此处为column2)。实际数据在
卡中设置。更新
行。
data
变量使update语句的处理更加容易。查看的代码,看看它是如何做的冰箱,这基本上是一个两列的例子,为您的确切情况

Template.column2.rendered = function () {
    $('#column2').droppable({
        drop: function (evt, ui) {
            var query = {_id: $(ui.draggable).data('id')};
            var data = {$set: {status: 2}};
            Cards.update(query, data);
        }
    });
};