如何在文本输入中添加拖放区域?

时间:2016-11-21 16:31:33

标签: javascript html drag-and-drop textinput webix

我正在尝试从数据表到Webix文本输入实现DnD。 实际上,我找到了a sample来输入html:

    webix.DragControl.addDrop("mytext", {       // "mytext" is a DIV id
        $drop:function(source, target, event){
            var dnd = webix.DragControl.getContext();
            target.value = dnd.from.getItem(dnd.source[0]).title;
        }
    })

但是我怎样才能将addDrop添加到Webix ui.text中呢?是否可以用某些东西替换DIV id? 关键是内部输入的ID是动态的(存储直到你重新加载页面),所以我没有看到任何易于理解的方法来添加丢弃区域。任何想法都表示赞赏。

以下是基于上一个示例的演示:http://webix.com/snippet/14cbbeec

1 个答案:

答案 0 :(得分:1)

一个肮脏的解决方案是将addDrop添加到webix小部件$ view属性(= DOM元素):

webix.DragControl.addDrop($$('webixText').$view, {
  $drop:function(source, target, event){
    var dnd = webix.DragControl.getContext();
    // target is the DOM element, so have to access webix widget with id
    $$('webixText').setValue(dnd.from.getItem(dnd.source[0]).title);
  }
});

更新了代码段:http://webix.com/snippet/77363e5a