Jquery 获取给定DOM元素的Meteor模板实例

Jquery 获取给定DOM元素的Meteor模板实例,jquery,jquery-ui,drag-and-drop,meteor,Jquery,Jquery Ui,Drag And Drop,Meteor,我正在将jQuery UI的拖放功能添加到我的Meteor应用程序中,用于使用Meteor呈现的模板。通过使用模板的.rendered回调,我可以很好地设置draggable和droptable小部件 诀窍在于发生跌落时。jQuery UI在回调中提供一个事件和一个对象:。但是,我需要找到meteor模板实例或底层集合数据ID,以便对可拖放和可拖放进行处理,例如更新集合等 最好的方法是什么?我所见过的最接近任何东西的地方是一个名为\u spark\u foooobjectid的属性,它似乎是由M

我正在将jQuery UI的拖放功能添加到我的Meteor应用程序中,用于使用Meteor呈现的模板。通过使用模板的
.rendered
回调,我可以很好地设置
draggable
droptable
小部件

诀窍在于发生跌落时。jQuery UI在回调中提供一个事件和一个对象:。但是,我需要找到meteor模板实例或底层集合数据ID,以便对可拖放和可拖放进行处理,例如更新集合等

最好的方法是什么?我所见过的最接近任何东西的地方是一个名为
\u spark\u foooobjectid
的属性,它似乎是由Meteor添加的。但这到底意味着什么呢

基于阅读,我的第一次尝试是尝试以下内容:

drop: (event, ui) ->
  console.log Spark.getDataContext(ui.draggable)

但是,这将返回
null
。还有其他想法吗?

哦,那只是一个小小的疏忽。正确的解决办法是

Spark.getDataContext(ui.draggable.context)

由于
ui.draggable
是一个jQuery对象。

好吧,如果您想要拖动的元素的数据,一个解决方案可能是使用模板数据。例如,您可以在Mongo文档中放置一个名为“label”的字段,并将可拖动内容包装在一个div中,如下所示:

{{#each yourHelper}}
  <div id={{label}}> 
    the rest of your content
  </div>
{{/each}}