Я использую jQuery Сортируемый пользовательский интерфейс, и я хотел бы отправить заказ элементов, используя обычную форму (поэтому, вместо использования Ajax, я хотел бы иметь форму с кнопкой отправки - когда я отправляю форма, он будет отправлять данные заказа на стороне сервера).
В настоящее время у меня есть:
<form id="frmExample" method="post">
<ul id="sortable">
<li id="task_1" class="ui-state-default">1</li>
<li id="task_2" class="ui-state-default">2</li>
<li id="task_3" class="ui-state-default">3</li>
<li id="task_4" class="ui-state-default">4</li>
</ul>
<button id="btnSubmit" type="submit">Submit</button>
</form>
<script>
$sortable.sortable({
update: function(event, ui) {
var $data = $(this).sortable('serialize');
// now what? :)
}
});
$sortable.disableSelection();
<script>
Возможно, это можно сделать, используя метод сериализации , поскольку в документации указано, что он " сериализует элемент сортируемой идентификаторы в форме / ajax отправляемая строка."... но я не знаю как. Или, может быть, есть лучший способ (без использования метода serialize
)?
Обратите внимание, что я хотел бы представить это в виде массива. Например, после отправки в бэкэнде (сторона PHP / Laravel) это будет выглядеть примерно так:
// Result of $_POST:
// array(
// 'positions' => array('task_3', 'task_2', 'task_4', 'task_1')
// )