如何将dnd功能应用于dojo中html中动态创建的div

时间:2013-11-27 11:00:59

标签: javascript dojo

我想使用dojo将dnd应用于动态创建的div。我已经尝试了很多方法来应用dnd功能。这是我的代码。

var inputdiv = document.createElement('div');
inputdiv.setAttribute("id", count);
inputdiv.style.background = "white";
inputdiv.style.height = "30px";
inputdiv.style.width = "60px";
dojo.addClass(inputdiv, "dojoDndItem");
calculation.appendChild(inputdiv);

1 个答案:

答案 0 :(得分:0)

如果您手动将带有dojoDndItem类的DOM节点添加到dnd源的DOM节点,则可以在dnd源(实际实例,不是)上调用sync它的DOM节点)使它根据DOM中现在的内容更新数据。

sync方法列在dojo/dnd documentation

另外,FWIW,您可以使用dojo.create更简洁地在代码中执行您正在执行的操作(您似乎正在从旧的全局变量中访问Dojo API,因此我将在此示例中执行相同操作):< / p>

dojo.create('div', {
  className: 'dojoDndItem',
  id: count,
  // Note: it would be more ideal to apply styles via CSS rather than inline
  style: {
    background: 'white',
    height: '30px',
    width: '60px'
  }
}, calculation);
// Then call sync() on the dnd source once you've finished adding nodes