Vorrei disporre di due elenchi, elementi disponibili e voci selezionate, in cui gli elementi disponibili vengono assegnati agli elementi selezionati tramite trascinamento della selezione. Richiedo che gli elementi selezionati siano ordinabili, ma non gli articoli disponibili. La sfida è che entrambi gli elenchi possono potenzialmente contenere un numero significativo di elementi e pertanto devono essere scorrevoli.jQuery Draggable + Sortable - Come trascinare e rilasciare tra due elenchi scorrevoli
Qui è la jQuery che ho finora:
<script type="text/javascript">
$(function() {
$("#available > li").draggable({
revert: 'invalid',
connectToSortable: '#selected',
containment: '#drag_container'
});
$("#selected").sortable({
axis: 'y',
placeholder: 'ui-state-highlight'
});
});
</script>
e il corrispondente codice HTML:
<div class="drag_container">
<ul id="available" class="drag_column draggable">
<li id="item1" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 1</li>
<li id="item2" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 2</li>
<li id="item3" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 3</li>
<li id="item4" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 4</li>
<li id="item5" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 5</li>
<li id="item6" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 6</li>
<li id="item9" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 9</li>
<li id="item10" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 10</li>
</ul>
<ul id="selected" class="drag_column draggable sortable" style="margin-left: 20px;">
<li id="item7" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 7</li>
<li id="item8" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 8</li>
<li id="item9" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 9</li>
<li id="item10" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 10</li>
<li id="item11" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 11</li>
<li id="item12" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 12</li>
<li id="item13" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 13</li>
<li id="item14" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 14</li>
<li id="item15" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 15</li>
<li id="item16" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 16</li>
<li id="item17" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 17</li>
<li id="item18" class="ui-state-default"><span class="ui-icon ui-icon-arrow-4-diag"></span>Item 18</li>
</ul>
<div style="clear: both"> </div>
</div>
Con il requisito lista scorrevole, tuttavia, non riesco a ottenere il comportamento draggable al lavoro elegantemente (vedere la demo allo http://pastehtml.com/view/1bsk6bt.html).
Una volta che l'elemento trascinato entra nell'elenco delle voci disponibili, scompare dietro il riquadro scorrevole. Ho provato l'helper clone e ho anche provato a giocare con i div, diverse opzioni di overflow, disattivando l'opzione scroll in jQuery, ma non riuscivo a farlo funzionare correttamente. Sono sicuro che qualcuno là fuori ha realizzato qualcosa di simile a quello che sto cercando di fare qui e mi può risparmiare qualche tempo? :)
Qualsiasi aiuto sarebbe molto apprezzato!
Allora perché il rotolo non appare?se hai più oggetti rispetto alla vista, non puoi scorrere per vederli. – PartySoft