如何为文本输入添加拖放区?
How to add a drop area to the text input?
我正在尝试实现从数据表到 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
一个肮脏的解决方案是 addDrop 到 webix widget $view 属性 (= DOM Element):
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);
}
});
我正在尝试实现从数据表到 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
一个肮脏的解决方案是 addDrop 到 webix widget $view 属性 (= DOM Element):
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);
}
});