Хочу сделать сортировку элементов с сохранением порядка в базе данных. Все что вышло на данный момент - это просто сортировка. Мне нужно массив order перевести в строку string_order с разделителем '+', и значение этой строки передавать в input hidden каждый раз, как только меняется порядок сортируемых элементов. Вот код, который я состряпал, но так как я знаком с js не очень хорошо, то я мог сделать что-то неверно. Подозреваю, что с
string_order = order.join('+');
$('#hiddeninput').val(string_order);
что-то не так. Возможно проблема в видимости переменных, или я не учел что-то в работе события update.
<script type="text/javascript">
var string_order = "";
$(document).ready(function(){
$(function() {
$("#mcs_container #mcs_container_wrapper").sortable({ opacity: 0.8, cursor: 'move', update: function() {
var order = $(this).sortable("serialize");
string_order = order.join('+');
$('#hiddeninput').val(string_order);
}
});
});
});
</script>
<div id="mcs_container">
<div id="mcs_container_wrapper">
<?php
echo $rows_main;
?>
</div>
</div>
<form action="" name="post" method="post" enctype="multipart/form-data" >
<input id="hiddeninput" type="hidden" name="form[value1]" value="" />
<input name="save" type="submit" value="Сохранить" />
</form>
Шаблон rows_main имеют вид:
<a href='#' class='image-tr-container' id='arrayorder_<?php echo $var_id ?>'>
<img src='#'/>
<div class='img_bottom'>
<?php echo $var_name; ?>
</div>
</a>