0

我想在一个页面上显示大约 20 li,底部有一个链接,上面写着“显示更多”。然后,此链接将清除前 20 个并显示接下来的 20 个。我应该如何执行此操作。(我正在创建一个画廊)

我正在考虑使用 PHP 和 MySQL。但是,对于我正在做的事情,我并不真的需要将它存储在数据库中,所以有没有更简单的方法可以只使用 html、php 或 javascript 来完成它?

谢谢

4

4 回答 4

0

正如一些人在他们的评论中所说,这个主题太笼统了。但这是一般的答案。

你可以用javascript来做到这一点。您可以创建一个 javascript 数组,其中包含您需要在列表中显示的所有记录。如果单击“显示更多”按钮,您可以触发一个 javascript 函数来清除页面并从列表中写入另一组项目。您只需要维护指向当前列表开头和结尾的指针。

于 2012-06-06T04:46:37.270 回答
0

这是您可以使用的插件。

http://www.geckonewmedia.com/blog/2009/8/20/simplepager---jquery-paging-plugin--updated

但如果您需要任何自定义代码,请告诉我

于 2012-06-06T04:49:19.413 回答
0

这是一个简单的解决方案,按照您的描述进行操作,无需任何 javascript 和 DB,只需将文件存储到磁盘:

<?php
$array = file('file.txt');
$from   = isset($_GET['from'])?$_GET['from']:0;
echo '<pre>';
for($i=($from+0);$i<($from+20) && $i<count($array);$i++) {
    echo '#'.$i.' '.$array[$i];
}
echo '</pre><a href="?from='.($from+20).'">MORE</a><br />';
于 2012-06-06T04:51:32.403 回答
0

试试这个

 $list_images=glob('imagesPath'.'*.{jpg|jpeg|png|gif}', GLOB_BRACE);

 if(isset($_REQUEST['page_id']))
 {
     $pageNo=$_REQUEST['page_id'];
 }    
 if($pageNo =='') 
     $offset=0;
 else
      $offset=$pageNo; 

 for($i=$offset; $i<($offset+20); $i++)
 {
      echo"<a href=''><img src='$list_images[$i]' /> </a>";
 }

// 将页码存储在隐藏变量中

 <input type='submit' value='More' onclick ='pageSet()' />

//Javascript

   function pageSet()
   { 
    var id=document.getElementById('page_id').value;

     if(id =='')
     { 
          document.getElementById('page_id').value =1;
     }
     else
     {
            document.getElementById('page_id').value =parseInt(id)+1;
     }   

  }
于 2012-06-06T05:37:26.700 回答