2
我使用knockout-sortable.js讓用戶拖放項目給他們不同的順序,但是當我有多個項目時遇到問題在我的頁面上放置「放置區域」。我有嵌套,所有這些都是可排序的,但不是可互換。防止項目在其他(父/子)元素中「可丟棄」
我的代碼:
<div class="sortable" data-bind="sortable: blueprint.pages">
<tr><td>Blabla</td></tr>
</div>
而在其他一些點:
<div class="sortable" data-bind="sortable: selectedPage().page_sections">
<tr><td>Another blabla</td></tr>
</div>
我現在可以只需拖放 '另一個布拉布拉' 到 'BLABLA',導致錯誤。我怎樣才能防止這種情況發生?
另一種方法是您可以在綁定中全局設置'ko.bindingHandlers.sortable.allowDrop = false;'或傳遞'allowDrop'。這將防止它成爲任何人的目標(你仍然可以排序)。它會和'connectClass:false'有相同的影響。 –
不幸的是,我還沒有得到任何解決方案的運氣。我想去遏制選項,但我不知道我應該用什麼來取代「父母」。我嘗試了我想綁定到的元素的id和class名稱,但我仍然可以將它拖放到任何其他「拖放區域」中。我在這裏錯過了什麼? – Sherlock
根據文檔,您應該能夠傳入選擇器e.x. 「#id」或「.sortable」。你可能也可以傳入'this'。 –