bachstelze
Grünschnabel
Hi,
ich habe ein Problem mit der sortable Funktion von jQuery, und zwar habe ich ein mehrdimensionales Array mit 3 ebenen, welches mit PHP dynamisch in einer aufklappbaren bzw. verschachtelten Baumansicht ausgegeben wird.
das ordnen der obersten ebene klappt soweit.
Man kann sich das ganze so vorstellen:
Ich kann also schon das Element 1 von Ebene 1 inkl. alle unteren Ebenen davon per Drag & Drop verschieben. (man kann also Element 1 von Ebene 1 unter Element 2 Ebene 1 verschieben -> nicht so, dass es ein unterelement ist, sondern dass aus Element 1 Ebene 1 -> Element 2 Ebene 1 wird).
Mein Problem ist, dass die unterelemente zwar schon verschoben werden, allerdings springen sie immer wieder auf ihre ursprungsposition zurück -> also praktisch ein drag ohne drop
Was jetzt also noch fehlt ist eine verschiebung der unterelemente
Die Elemente sollen untereinander nur auf ihrer eigenen Ebene verschoben werden können d.h. ich darf kein Element von Ebene 3 auf Ebene 2 oder 1 verschieben können.
Da ich leider nicht wirklich viel Ahnung habe von JavaScript/jQuery weiss ich nicht genau, wie ich das angehen soll.
hier mal der Quellcode der sortable Funktion:
Ich Hoffe das ist halbwegs verständlich, was ich geschrieben habe und was ich meine
ich habe ein Problem mit der sortable Funktion von jQuery, und zwar habe ich ein mehrdimensionales Array mit 3 ebenen, welches mit PHP dynamisch in einer aufklappbaren bzw. verschachtelten Baumansicht ausgegeben wird.
das ordnen der obersten ebene klappt soweit.
Man kann sich das ganze so vorstellen:
- element 1 ebene 1
- element 1 ebene 2
- element 1 ebene 3
- element 1 ebene 2
- element 2 ebene 1
- element 2 ebene 2
- element 2 ebene 3
- element 2 ebene 2
Ich kann also schon das Element 1 von Ebene 1 inkl. alle unteren Ebenen davon per Drag & Drop verschieben. (man kann also Element 1 von Ebene 1 unter Element 2 Ebene 1 verschieben -> nicht so, dass es ein unterelement ist, sondern dass aus Element 1 Ebene 1 -> Element 2 Ebene 1 wird).
Mein Problem ist, dass die unterelemente zwar schon verschoben werden, allerdings springen sie immer wieder auf ihre ursprungsposition zurück -> also praktisch ein drag ohne drop
Was jetzt also noch fehlt ist eine verschiebung der unterelemente
Die Elemente sollen untereinander nur auf ihrer eigenen Ebene verschoben werden können d.h. ich darf kein Element von Ebene 3 auf Ebene 2 oder 1 verschieben können.
Da ich leider nicht wirklich viel Ahnung habe von JavaScript/jQuery weiss ich nicht genau, wie ich das angehen soll.
hier mal der Quellcode der sortable Funktion:
PHP:
<script type="text/javascript">
$(function()
{
$("#list ul").sortable({ axis: 'y', delay: 200, opacity: 0.7, cursor: 'move', update:
function()
{
var order = $(this).sortable("serialize") + '&update=update';
$.post("updateList.php", order,
function(theResponse)
{
$("#response").html(theResponse);
$("#response").slideDown('fast');
slideout();
}
);
}
});
}
);
</script>
Ich Hoffe das ist halbwegs verständlich, was ich geschrieben habe und was ich meine