【问题标题】:drag n drop between two tables在两个表之间拖放
【发布时间】:2013-01-06 20:13:22
【问题描述】:

我正在尝试在两个表之间拖放 n 行。第一个表有 3 列,第二个表有 4 列。我有拖放工作。

我看到的所有示例通常都在放置的位置附加到。我想做的是替换拖动行的内容并替换/更新放置位置的单元格。

我在想是否可以编写一个新的 tablerow(..),然后删除当前删除的行并将其替换为生成的行。或者只是更新新位置的列。

(function ($) {
  $(document).ready(function () {
    var tb1 = $("#table1 tr");
    var tb2 = $("#table2 tr");
    tb1.draggable({
      appendTo: "body",
      helper: "clone",
      opacity: "0.35",
      revert: "invalid"
    });
    tb2.droppable({
      accept: '#table1 tr',
      tolerance: "pointer",
      drop: function (event, ui) {
        //loop through all items in the row
        var $col1, $col2;
        tb1.each(function () {
          $col1 = $("span:eq(0)", this).text();
          $col2 = $("span:eq(1)", this).text();
        });
        $droppedRow = $(this).children('td');
        var $destCol1 = $droppedRow.find('span')[0].innerHTML;
        var $destCol2 = $droppedRow.find('span')[1].innerHTML;
        var $row = "<tr><td>" & $destCol1 & "</td><td>" & $destCol2 & "</td><td>" & $col1 & "</td><td>" & $col2 & "</td></tr>";

      }

http://jsfiddle.net/S2yC2/7/

任何建议如何进行。 谢谢

【问题讨论】:

    标签: jquery jquery-ui drag-and-drop


    【解决方案1】:

    我认为您正在尝试这样做:http://jsfiddle.net/S2yC2/15/

      drop: function (event, ui) {
    
        //Retrieve relevant data of the dragged line
        var $draggedCol = $(ui.draggable).children('td');
        var col1 = $($draggedCol[0]).html();
        var col2 = $($draggedCol[1]).html();      
    
        //Assign data to the void cell of the dropped line
        var $droppedRow = $(this).children('td');
        $($droppedRow[2]).html(col1);
        $($droppedRow[3]).html(col2);
    
      }
    

    【讨论】:

    • 感谢@sdedpont 正是我一直在寻找的东西.. 你是救生员.. :)
    猜你喜欢
    • 2019-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-03
    • 2013-03-02
    • 1970-01-01
    相关资源
    最近更新 更多