0

在ie8上,一切工作正常,與我的可排序列表。但是,我在ie7上遇到了問題。Jquery UI可排序的ie7問題,當排列在可排序表格之外

我的頁面爲每位員工設置了一張表格。有一份需要分配的作業列表,並將這些作業行拖放到員工表中。

起初,我遇到了問題,我無法放入已經是空的員工表中,但是我通過在每個表中使用一個.dontinclude行的組合並添加一個接收函數來解決此問題(見下文):

jQuery_1_9_1(function() { 
      jQuery_1_9_1('[id$="' + tname + '"] ').sortable({ 
       items: "tr:not(.dontinclude)", 
       connectWith: ".connectedSortable ", 
       receive: function(ev, ui) { 
        //debugger; 
        ui.item.parent().find('tbody').append(ui.item); 
       } 
      }).disableSelection(); 
     }); 

我添加.dontinclude行作爲我創建表(但它們是動態的,而不是聲明),這意味着它是第一行出現。在添加之前

:not(.dontinclude) 

行不會添加到空表中。添加該行後,他們將添加到表中,但是他們會添加到tbody標記之後,這是沒用的。添加指定的接收函數,其中接收後添加,意義元素現在出現在tbody中。

因此,在ie8中一切正常,直到我發現某些用戶會在ie7上。一切都很順利,直到我不小心放開了一排中間拖放,但沒有超過我的一個排序表。結果是它完全消失了。我檢查了DOM頁面,並且這些行再次在tbody的之外添加(推測導致它們在ie7上消失)。如果我將調試器放入receive函數中,則會發現該函數在此實例中未被調用 - 僅當我通過可排序表格時纔會調用該函數。

所以我想我需要找到一個行爲,當一個物品被丟棄在可排序區域之外時,可能會覆蓋它。

這可能嗎?也許與jquery droppable有關?

回答