当拖动到表上时,如何判断被拖到了哪一行



我希望使用jQuery UI的"Draggable"one_answers"Droppable"功能将数据从一个表拖动到另一个表中。

我希望能够跟踪被拖到哪个单元格(特别是X/Y索引),尽管可丢弃函数返回的This对象列出了一个CellIndex,其中包含Column(X)值,但我发现它被拖到了哪个(Y)上的运气较差。

我怎么知道我刚才掉在哪一排?

JS Fiddle Link

我会执行以下操作:

  • 使用drop event
  • 使用$(this)event.target查找丢弃的对象
  • 查找.closest()表行(tr
  • 使用.index() 将其与表的行进行比较

    $('#mappingChar td').droppable({
        hoverClass: "ui-state-hover",
        drop: function (event, ui) {
            var dropped = $(this),
                droppedRow = dropped.closest('tr');
            console.log(droppedRow.index());
        }
    });
    

演示:http://jsfiddle.net/dirtyd77/XcKdX/3/

希望这能有所帮助,如果你有任何问题,请告诉我!

您可以使用.index()或rowIndex来找到它,代码中应该有这样的东西:

$('#mappingChar td').droppable(
        {
            hoverClass: "ui-state-hover",
            drop: function( event, ui )
            {
                alert($(this).parent().index()+"norn"+$(this)[0].parentNode.rowIndex);
                console.log('drop successful');
            }
        }); 

最新更新