首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery和drop in table

jQuery和drop in table
EN

Stack Overflow用户
提问于 2010-09-07 18:33:25
回答 2查看 328关注 0票数 0

我有以下代码。当表为空时,需要追加到ti,但如果有行,则需要对拖放的行执行insertBefore操作。但是drop只在表上检测到,即使我在tr上drop,跟踪也只显示表

代码语言:javascript
复制
    $("#mytable TABLE, #mytable TABLE").droppable({
       drop: function(event, ui)
       {
        var target = $(event.target);
        var draggable = ui.draggable;

        trace(target[0].tagName) ;
       }
   });
EN

回答 2

Stack Overflow用户

发布于 2010-09-07 19:09:00

我相信它是可以整理的,但这里有一些似乎有效的方法:

代码语言:javascript
复制
function dropRow(event, ui) {
    var target = $(event.target);
    var draggable = ui.draggable;

    var tr = $('<tr><td>' + draggable.text() + '</td></tr>');
    target.before(tr);
    tr.droppable({ drop: dropRow, greedy: true });    
}

function dropTable(event, ui) {
    var target = $(event.target);
    var draggable = ui.draggable;

    var tr = $('<tr><td>' + draggable.text() + '</td></tr>');
    target.append(tr);
    tr.droppable({ drop: dropRow, greedy: true });    
}


$("#mytable").droppable({
    drop: dropTable
});​

This question可能是相关的--你的问题的一部分是把'drop‘事件挂接到还不存在的元素上(’This question‘也不处理'drop’)。

票数 0
EN

Stack Overflow用户

发布于 2010-09-08 19:11:08

我的错,问题是TR是被丢弃的那个,所以它们不存在于init中,这是只有table做出反应的原因。因此,我在页面中的所有TR (两个表)上初始化drop,这样当第一个表中的TR在第二个表中被删除时,它们会在另一个TR被删除时做出反应。

但是我需要找到一种最简洁的方法来初始化丢弃的TR。不知道在每个新行上重新启动第二个表中的所有TR是否是一个好方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3657817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档