1

jQueryプラグインを使用してデータベースから取り込まれたリストアイテムからソート可能なリストを作成しようとしていますが、効果は提示された最初のアイテムにのみ適用されます:

<?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、最初のものだけでなく、すべての人口に影響を与える効果を望んでいます. どんな助けでも素晴らしいでしょう。わかりにくい場合は申し訳ありませんが、混乱している場合は言い換えることができます。

4

1 に答える 1

0

原因はおそらくあなたが持っているからです

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

ただし、複数の要素を作成する foreach ステートメントもある#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; ?>

HTH

于 2012-04-20T13:49:35.693 に答える