Сортируемый пользовательский интерфейс jQuery: определение порядка сортировки элементов

Попробуйте это и проверите shutil

скопируйте файл в каталог.

cd directory

shutil.make_archive('gzipped', 'gztar', os.getcwd())

20
задан Ravi Ram 10 May 2012 в 11:02
поделиться

2 ответа

ОБНОВЛЕНО 2012

ПОЛНАЯ РАБОЧАЯ ДЕМО И ИСТОЧНИК


получить позицию индекса элементов попробуйте прочитать это:

Плагин COOKIE для jquery:

JQUERY:

 $(function() {
    //coockie name
     var LI_POSITION = 'li_position';
       $('ul#sortable').sortable({
         //observe the update event...
            update: function(event, ui) {
              //create the array that hold the positions...
              var order = []; 
                //loop trought each li...
               $('#sortable li').each( function(e) {

               //add each li position to the array...     
               // the +1 is for make it start from 1 instead of 0
              order.push( $(this).attr('id')  + '=' + ( $(this).index() + 1 ) );
              });
              // join the array as single variable...
              var positions = order.join(';')
               //use the variable as you need!
              alert( positions );
             // $.cookie( LI_POSITION , positions , { expires: 10 });
            }
        });
     });​

HTML:

<ul id="sortable"> 
  <li id="id_1"> Item 1 </li> 
  <li id="id_2"> Item 2 </li> 
  <li id="id_3"> Item 3 </li> 
  <li id="id_4"> Item 4 </li> 
  <li id="id_5"> Item 5 </li> 
</ul>

PHP:

это всего лишь пример, но у вас есть идея: вместо этого вы можете использовать базу данных и использовать AJAX для возврата lis:

<?php  
//check if cookie is set..
if ( isset( $_COOKIE['li_position'] ) ) {
//explode the cockie by ";"...
$lis = explode( ';' , $_COOKIE['li_position'] );
// loop for each "id_#=#" ...
foreach ( $lis as $key => $val ) {
//explode each value found by "="...
$pos = explode( '=' , $val );
//format the result into li...
$li .= '<li id="'.$pos[0].'" >'.$pos[1].'</li>';
}
//display it
echo $li;
// use this for delete the cookie!
// setcookie( 'li_position' , null );
} else {
// no cookie available display default set of lis
 echo '
  <li id="id_1"> Fuji </li> 
  <li id="id_2"> Golden </li> 
  <li id="id_3"> Gala </li> 
  <li id="id_4"> William </li> 
  <li id="id_5"> Jordan </li> 
';
}
?>
42
ответ дан 29 November 2019 в 22:30
поделиться

Используйте метод toArray , который сериализует идентификаторы сортируемого элемента в массив строк.

$( "#sortable" ).sortable('toArray');
37
ответ дан 29 November 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: