Sto provando a creare un elenco selezionabile con rientri parent/child/grandchild. Si prega di vedere di seguito:JqueryUI selezionabile - deseleziona senza Ctrl
$('#theParentList').selectable({
filter: 'li div',
selected: function (event, ui) {
var selectedText = $(ui.selected).text();
$("#selectedNode").text(selectedText);
if ($(ui.selected).hasClass('selectedfilter')) {
$(ui.selected).removeClass('selectedfilter');
}
}
});
Ma, io sto avendo un sacco di problemi a venire con la funzionalità "deselezionare" (vale a dire senza dover premere Ctrl). Inoltre, non desidero "associare" Ctrl automaticamente al mouse verso il basso (che è descritto in alcune altre soluzioni), b/c Voglio solo un elemento selezionato contemporaneamente. Inoltre, voglio solo capire come fare il flusso di controllo per deselezionare attraverso gli eventi (ad esempio "selezionato:").
Cosa sto facendo di sbagliato qui? Come puoi vedere, la selezione viene rilevata correttamente poiché la casella di testo viene aggiornata correttamente con il testo corretto. Tuttavia, quando faccio clic su un elemento già selezionato per "deselezionare" (senza tenere premuto Ctrl), non deseleziona. Immagino che anche in questa situazione, venga attivato un evento "selezionato", ma chiaramente c'è qualcosa di sbagliato nel mio codice "selezionato:". Molto frustrante ..
Grazie a tutti.
Seconda domanda: con questa soluzione http://stackoverflow.com/a/11419341/1861097 è possibile ottenere il conteggio dei livelli e quindi è possibile utilizzare ad es. '.css (" margin-left ", livello * 5 +" px ")' – Johncze