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

标签 jquery jquery-ui drag-and-drop meteor

我正在使用 jQuery-UI 将拖放功能添加到我的 Meteor 应用程序中,以获取使用 Meteor 渲染的模板。通过使用模板的 .rendered 回调,我可以很好地设置 draggabledroppable 小部件。

棘手的部分是发生掉落时。 jQuery-UI 在回调中给出一个事件和一个对象:http://api.jqueryui.com/droppable/#event-drop 。但是,我需要找到 meteor 模板实例或底层集合数据 ID,以便对可拖动和可放置的内容执行某些操作,例如更新集合等。

最好的方法是什么?我见过的最接近的东西是一个名为 _spark_fooObjectId 的属性,它似乎是由 Meteor 添加的。但这到底意味着什么?

enter image description here

我的第一次尝试,基于阅读 https://github.com/meteor/meteor/wiki/Spark ,就是尝试以下操作:

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

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

最佳答案

哎呀,这只是一个小小的疏忽。正确的解决方案是

Spark.getDataContext(ui.draggable.context)

因为 ui.draggable 是一个 jQuery 对象。

关于jquery - 获取给定 DOM 元素的 Meteor 模板实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18026556/

相关文章:

javascript - 单击某个项目时的定位问题

ios - 关于如何将项目从 UITableView 拖放到 UITableView 的教程

jquery-ui - jQuery UI 可调整大小 + 可拖动 : disappearing on drop

javascript - 如何在 Cypress.io 中拖放

javascript - MVC中如何根据点击按钮进入Action并传递参数?

javascript - 使用 onclick - jquery 在循环中按 ID 删除元素

javascript - 需要切换选定的 div,并增加计数器

jquery - IE9 不接受标准的 jQuery 语法

jquery - HTML 复选框元素未将值传递到 jQuery 和 AJAX 字符串中

javascript - 使用带有选项卡和 Accordion 的 jQuery UI 时,如何显示所有可见的工具提示?