bootstrap pagination in codeigniter works but desi

2019-08-28 07:50发布

问题:

my pagination.php file

$config['full_tag_open'] = "<ul class='pagination'>";
$config['full_tag_close'] ="</ul>";
$config['num_tag_open'] = '<li>';
$config['num_tag_close'] = '</li>';
$config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>";
$config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";
$config['next_tag_open'] = "<li>";
$config['next_tagl_close'] = "</li>";
$config['prev_tag_open'] = "<li>";
$config['prev_tagl_close'] = "</li>";
$config['first_tag_open'] = "<li>";
$config['first_tagl_close'] = "</li>";
$config['last_tag_open'] = "<li>";
$config['last_tagl_close'] = "</li>";

and my view files

<nav> 
  <ul class="pagination">
    <li>
      <a href="#">
         <?php echo $this->pagination->create_links(); ?>
      </a>
    </li> 
  </ul>
  </nav>

controller

public function manage_categories() {

        $this->securePage();

        $this->preventAdmin();

        $this->load->library('pagination');

        $config['base_url'] = base_url('categories/manage-categories');

        $config['total_rows'] = $this->categories_model->getAllCategories()->num_rows();

        $config['uri_segment'] = 3;

        $config['per_page'] = $this->config->item('per_page');

        $this->pagination->initialize($config);

        $data['categories'] = $this->categories_model->getAllCategories($config['per_page'], $this->uri->segment(3));



        $data['news_title'] = 'Manage Categories | Kanchannew.com';

        $data['Keywords'] = 'Manage Categories';

        $data['url'] = '';

        $data['content'] = $this->load->view('categories/manage', $data, true);

        $this->load->view('kanchan', $data);
    }

It gives pagination but design was messed up. Page 1 & 2 & 3 are here and there how can I correct it? and I also want to make last page & first page but I don't have a good idea.

回答1:

Fix up your config

    $config['full_tag_open'] = "<ul class='pagination'>";
    $config['full_tag_close'] ="</ul>";

    $config['num_tag_open'] = '<li>';
    $config['num_tag_close'] = '</li>';

    $config['cur_tag_open'] = "<li class='disabled active'><a href='#'>";//you added extra li tag here
    $config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";

    $config['next_tag_open'] = "<li>";
    $config['next_tag_close'] = "</li>";//tagl? should be tag

    $config['prev_tag_open'] = "<li>";
    $config['prev_tag_close'] = "</li>";//tagl? should be tag

    $config['first_tag_open'] = "<li>";
    $config['first_tag_close'] = "</li>";//tagl? should be tag

    $config['last_tag_open'] = "<li>";
    $config['last_tag_close'] = "</li>";//tagl? should be tag

At your view use this code

<nav> 
     <?php echo $this->pagination->create_links(); ?>
</nav>


回答2:

Try to change:

$config['cur_tag_open'] = "<li class='disabled active'><a href='#'>";
$config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";

to

$config['cur_tag_open'] = "<li class='disabled active'><a href='#'><span class='sr-only'>";
$config['cur_tag_close'] = "</span></a></li>";