2016-03-21 1 views
0

Guten Tag, Kurze Frage,CodeIgniter Paginierung Onclick

I CI Paginierung mein Projekt verwende, es perfekt funktioniert, aber ich wollte ein paar Filter auf, um sie hinzuzufügen.

d. H. Ich muss sein Klickereignis abfangen. obwohl ich bereits seinem Click-Ereignis fangen diese

$("ul.pagination > li a[href]").click(function(e){ 
     loadingStart(); 
}); 

mein Problem verwendet, ist es nach wie vor auf die nächste Seite umleiten,

, was ich brauche so etwas wie dieses.

if(myVar == 0) { 
     //do not redirect 
} else { 
     //redirect. 
} 

Antwort

1

Verwenden Sie e.preventDefault(); und dann führen Sie Ihre benutzerdefinierte Funktion

+0

das Problem ist, es funktioniert nicht gut. :( –

0

Wenn Sie Filter für Seitenumbruch, die $ _GET verwenden möchten ... keine Umleitung in js (Sie können nicht rückgängig machen, etc.).

ich Ihnen zeigen, wie ich tun:

Controller:

/** 
Example list 
**/ 
public function index() 
{ 
    $page = ($this->input->get('page') AND $this->input->get('page')>1)?(intval($this->input->get('page'))-1)*9:1; #9 item for page 

    #where if isset($_GET) 
    $where = array(); 
    if($this->input->get('city')) { 
    $where['users.city'] = $this->input->get('city'); 
    } 
    if($this->input->get('street')) { 
    $where['users.street'] = $this->input->get('street'); 
    } 
    #load model 
    $this->load->model('users_m'); 
    $view_data['users'] = $this->users_m->GetAll($where,$page,array('users.register_date'=>'DESC'))->result(); 
    //pagination library 
    $this->load->library('pagination'); 
    $config['base_url'] = site_url('/users'); 
    $config['total_rows'] = $this->users_m->GetAll($where,0)->num_rows(); 
    $config['per_page'] = 9; 
    $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['page_query_string'] = TRUE; 
    $config['query_string_segment'] = 'page'; 
    $config['reuse_query_string'] = TRUE; 
    $config['use_page_numbers'] = true; 
    $config['last_tagl_close'] = "</li>"; 
    $this->pagination->initialize($config); 
    //variable to template 
    $view_data['pagination'] = $this->pagination; 

    $this->load->view('/users/index',$view_data); 
} 

Modell: users_m

/** 
* Get all users example 
**/ 
public function GetAll($where=array(),$page=1,$order_by=array(),$limit=9) 
{ 

    $this->db->select('users.*'); 
    #order by 
    if(count($order_by)>0) 
    { 
    foreach($order_by as $key=>$value) 
    { 
     $this->db->order_by($key,$value); 
    } 
    } 
    $this->db->where($where); 
    #show all (for pagination calculate) 
    if($page==0) return $this->db->get_where('users',$where); 
    #show single page 
    return $this->db->get_where('users',$where,$limit,(($page==1)?$page-1:$page)); 
} 

und Aussicht:

<div id="search_bar"> 
<?php echo form_open(site_url('/users'),array('class'=>'form-inline','method'=>'get'));?> 
<div class="form-group col-lg-2 col-md-4 col-sm-4"> 
    <select name="type" class="form-control"> 
    <option value="" disabled="disabled" selected="selected" >City</option> 
    <option value="1" <?php if(set_value('city')==1) echo 'selected';?>>London</option> 
    <option value="2" <?php if(set_value('city')==2) echo 'selected';?>>Warsaw</option> 
    </select> 
</div> 
<button type="submit" class="btn btn-primary" style="margin-top:-10px;">Search</button> 
<?php echo form_close();?> 
</div> 
<hr/> 
<div id="grid-user" class="row"> 
    <table> 
    <tbody> 
     <?php foreach($users as $user):?> 
     <tr> 
      <td><?php echo $user->id;?></td> 
      <td><?php echo $user->firstname;?></td> 
      <td><?php echo $user->lastname;?></td> 
      <td><?php echo date("d.m.Y",strtotime($user->register_date));?></td> 
     </tr> 
     <?php endforeach;?> 
    </tbody> 
    </table> 
</div> 
<div class="row"> 
    <div class="col-lg-12"> 
    <div style="float:right;"><?php echo $pagination->create_links();?></div> 
    </div> 
</div> 

mir leid für mein Englisch. Dies ist ein Beispiel (nicht aktiviert, aus dem Speicher geschrieben).

Versuchen Sie es :)