2012-04-06 2 views
1

Я пытаюсь сделать сортировки списка из элементов списка заселенных из базы данных, используя JQuery плагин в но эффект применяется только к первому пункту, представленный:JQuery Сортируемых Списков с CodeIgniter

<?php if(isset($bookmarks)) : foreach($bookmarks as $row) :?> 
    <div id="makeDrag"> 

    <?php $fixed = preg_replace('#^[^:/.]*[:/]+#i', '', $row->URL); ?> 

    <li> 
     <div class="well"> 
      <div><?php echo anchor('http://'.$fixed, $row->Name); ?></div> 
      <div><strong>Comments:</strong> <?php echo $row->Comments; ?></div> 
      <h4 class="btn-small"> 
       <?php echo anchor("site/delete/$row->id", "Delete"); ?> 
      </h4> 
     </li> 
    </div> 
<?php endforeach; ?> 

я могу вид, где это происходит не так, но не знаю, как это исправить. Мне явно хотелось бы, чтобы эффект повлиял на все заселенные li не только на первый. Любая помощь будет большой. Извините, если я не понимаю, я могу попытаться перефразировать вещи, если это сбивает с толку.

+3

Можете ли вы опубликовать код JQuery, который вы используете. Кроме того, ваши закрывающие 'div' и' li' неверны, у вас нет 'ul' или' ol', чтобы содержать ваш 'li', и недопустимо использовать уровень блока' div' внутри встроенного 'li '. –

+0

Мне удалось сделать эту работу, переключив некоторые теги. Мне любопытно, как я могу добиться такого же эффекта, не используя div уровня блока. – Julian25

+0

Используйте 'span' для' display: block; 'в CSS –

ответ

0

Причина, скорее всего, потому что у вас есть

$('#makeDrag').sortable(); 

, но у вас также есть Еогеасп утверждение, что создает несколько #makeDrag элементов таким образом, что делает ваш HTML недействительным.

Чтобы это исправить:

<?php if(isset($bookmarks)) : ?> 
    <ul id="makeDrag"> 
    <?php foreach($bookmarks as $row) : ?> 
     <?php $fixed = preg_replace('#^[^:/.]*[:/]+#i', '', $row->URL); ?> 
     <li> 
      <div class="well"> 
       <div><?php echo anchor('http://'.$fixed, $row->Name); ?></div> 
       <div><strong>Comments:</strong> <?php echo $row->Comments; ?></div> 
       <h4 class="btn-small"><?php echo anchor("site/delete/$row->id", "Delete"); ?></h4> 
      </div> 
     </li> 
    <? endforeach; ?> 
    </ul> 
<?php endif; ?> 

НТН

Смежные вопросы