如何将可排序顺序传递给jQuery中的隐藏字段?

时间:2015-01-13 13:03:44

标签: jquery jquery-ui jquery-ui-sortable

我试图使用下面的代码将可排序列表的值传递给隐藏字段,但没有运气:

<script>
   $(document).ready(function(){

  $(function() {
    $( "#sortable1, #sortable2" ).sortable({
      connectWith: ".connectedSortable"
    }).disableSelection();
  });

  var idsInOrder = [];

  $("#form_quest").submit(function(){
    $("ul#sortable2 li.card").each(function() { idsInOrder.push($(this).attr('title')); });

    $("#sort_order").val(idsInOrder);
  });  
});
</script>

html隐藏字段:

<input type="hidden" name="sort_order" id="sort_order" value=""/>

我做错了什么?

提前致谢。

2 个答案:

答案 0 :(得分:0)

在您的字段中获取title1,title2,title3:

$("#sort_order").val(idsInOrder.join(','));

答案 1 :(得分:0)

不要在表单提交上执行,而是 when the order has been updated

示例:http://jsfiddle.net/4zxLkfv6/5/

var idsInOrder = [];
$('.sortable').sortable({
  update: function( event, ui ) {
      idsInOrder = [];
      $('.sortable li').each(function() {
          idsInOrder.push($(this).attr('id'));
      });
      $('#sort_order').val(idsInOrder);
  }
});